Java ListView行上不同对象的不同单击事件

Java ListView行上不同对象的不同单击事件,java,android,listview,android-listview,Java,Android,Listview,Android Listview,我试图为一行listview的不同部分实现不同的单击事件侦听器 例如: 我为两个不同的部分做了两个不同的线性布局。有什么特别的方法来实现两种不同布局的onclick侦听器吗 如果你有想法的话,请建议其他的方法 另外,我无法在自定义适配器中定义单击事件,因为活动需要通过向其中添加一些数据来触发事件。您可以像这样在适配器类中实现单击侦听器- layout1.setOnClickListener(new View.OnClickListener() { @Override

我试图为一行listview的不同部分实现不同的单击事件侦听器

例如:

我为两个不同的部分做了两个不同的线性布局。有什么特别的方法来实现两种不同布局的onclick侦听器吗

如果你有想法的话,请建议其他的方法


另外,我无法在自定义适配器中定义单击事件,因为活动需要通过向其中添加一些数据来触发事件。

您可以像这样在适配器类中实现单击侦听器-

layout1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {


            }
        });

layout2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {


            }
        });

活动中创建
静态方法

public static void YourMethod()
{

}
adapter
中创建
onClickListener
,并调用
activity
方法

holder.YourLayout.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            YourActivity.YourMethod();
        }
    });

我知道,忘了提一下,显示listview的活动需要处理单击事件。它会将一些数据推入其中。随着事件的发展。那么,有没有一种方法可以从活动而不是适配器访问布局?您可以通过布局创建回调接口并在活动中获取回调在活动中创建方法并在单击布局时调用它。嗯,好主意,让我试试@RaviRupareliya我正在获取java.lang.NullPointerException:尝试在空对象上调用虚拟方法“android.content.res.Resources android.content.Context.getResources()”,就像它无法访问资源一样!检查我的答案@kittu88I收到以下错误:java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法“android.content.res.Resources android.content.Context.getResources()”。您应该使用已完成的代码更新问题,但如果该方法是静态的,然后我无法访问非静态变量。getApplicationContext()和startActivity()也不起作用。请将您的上下文转换为活动并调用该方法。多谢各位!你让我开心:)