Android:单击侦听器操作
我不知道该怎么解释,但我来了,所以我有一个填充列表。。。因此,我长按列表中的每个项目时,都会出现一个图像按钮,实际上是一个删除按钮。。所以,当我长按列表中的另一项时,我想在我单击的第一项上隐藏该按钮。。。就像每次我长时间单击一个项目时,都会出现一个图像按钮,当我单击另一个项目时,该按钮将被隐藏,并且我单击新项目的按钮将被显示。。任何关于如何做到这一点的意见都将不胜感激,或者如果你能给我一些有效的方法。。请分享。tnx much您可以只跟踪上一个删除按钮,因为只允许一个。在长单击侦听器中,您可以删除上一个按钮并创建一个新按钮Android:单击侦听器操作,android,Android,我不知道该怎么解释,但我来了,所以我有一个填充列表。。。因此,我长按列表中的每个项目时,都会出现一个图像按钮,实际上是一个删除按钮。。所以,当我长按列表中的另一项时,我想在我单击的第一项上隐藏该按钮。。。就像每次我长时间单击一个项目时,都会出现一个图像按钮,当我单击另一个项目时,该按钮将被隐藏,并且我单击新项目的按钮将被显示。。任何关于如何做到这一点的意见都将不胜感激,或者如果你能给我一些有效的方法。。请分享。tnx much您可以只跟踪上一个删除按钮,因为只允许一个。在长单击侦听器中,您可以删
ImageButton prevDelete = null;
...
list.setOnItemLongClickListener (new OnItemLongClickListener() {
public boolean onItemLongClick(AdapterView parent, View view, int position, long id) {
deleteButton(prevButton); // check if not null in the function
prevDelete = createButton(view); // draw button at view
return true;
}
});
您可能已经实现了函数
createButton
和deleteButton
这个问题非常令人困惑。。。但根据我所了解的情况,我发现你需要检测列表项上的长按。你试过这个吗
试试这个
假设您正在为列表使用适配器
final ImageButton prevButton=null;
row.setOnLongClickListener(new OnLongClickListener() {
@Override
public boolean onLongClick(View arg0) {
ImageButton currButton=row.findViewById(R.id.<button_id>);
currButton.setVisibility(View.VISIBLE);
if(prevButton!=null)
prevButton.setVisibility(View.gone);
prevButton=currButton;
return true;
}
});
final ImageButton prevButton=null;
row.setOnLongClickListener(新的OnLongClickListener(){
@凌驾
仅长按公共布尔值(视图arg0){
ImageButton currButton=row.findViewById(R.id.);
currButton.setVisibility(View.VISIBLE);
如果(prevButton!=null)
prevButton.setVisibility(View.gone);
prevButton=currButton;
返回true;
}
});
不,这不是我的意思。。。我完全理解longClicklistener,但我不知道的是这种情况。。当我长时间单击某个项目时,会出现一个按钮,当我长时间单击另一个项目时。。我想隐藏另一个按钮,并使另一个按钮重新出现在光滑的项目上。是的,我的列表使用了myown adapte。。此按钮是动态创建的,因为我在xml上..:戴普:它已经开始工作了。。种类组合urs和u:D tnx下面的按钮,这是动态定义的按钮吗?。。因为我是xml定义的,所以最好隐藏或移动按钮。您可以通过ImageButton myButton=(ImageButton)findViewById(R.id.my_按钮)访问该按钮代码>是的,是的,已经可以了。。我用了你的建议和你上面的建议
final ImageButton prevButton=null;
row.setOnLongClickListener(new OnLongClickListener() {
@Override
public boolean onLongClick(View arg0) {
ImageButton currButton=row.findViewById(R.id.<button_id>);
currButton.setVisibility(View.VISIBLE);
if(prevButton!=null)
prevButton.setVisibility(View.gone);
prevButton=currButton;
return true;
}
});