Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 多个longclicklisteners_Java_Android - Fatal编程技术网

Java 多个longclicklisteners

Java 多个longclicklisteners,java,android,Java,Android,我有10个项目,当长时间单击时,将显示一个项目特定的对话框。这不是列表视图 现在,我正在每个项目上注册一个长时间单击侦听器。是否可以像设置android:onClick=“buttonClick”和“在代码中设置public void buttonClick(视图v)”一样捕获长时间单击的项目的视图,然后使用v识别单击的按钮?您可以 创建一个实现longclicklistener的类 然后像这样覆盖它 private class MyOnClickListener implements OnLo

我有10个项目,当长时间单击时,将显示一个项目特定的对话框。这不是列表视图

现在,我正在每个项目上注册一个长时间单击侦听器。是否可以像设置android:onClick=“buttonClick”和“在代码中设置public void buttonClick(视图v)”一样捕获长时间单击的项目的视图,然后使用v识别单击的按钮?

您可以

创建一个实现longclicklistener的类

然后像这样覆盖它

private class MyOnClickListener implements OnLongClickListener{
    @Override
    public void onLongClick(View v){
       id=v.getId();
       switch(id){
         case R.id.item1:
            //your item1 code
         case R.id.item2:
           //your item 2 code
       }
    }
}
将其声明为您的内部类,以便访问您的值

创建一个实现longclicklistener的类

然后像这样覆盖它

private class MyOnClickListener implements OnLongClickListener{
    @Override
    public void onLongClick(View v){
       id=v.getId();
       switch(id){
         case R.id.item1:
            //your item1 code
         case R.id.item2:
           //your item 2 code
       }
    }
}

将其声明为您的内部类,以方便访问您的值

我是否需要。setOnLongClickListener(this);在每一项上还是我做错了?这也是一个好主意,只需在我需要的主要活动中实现它;在每个项目上还是我做错了?这也是一个好主意,只是在主要活动中实施它