我不知道要解释这个,但我在这里,所以我有一个填充列表...所以每个项目我长按该列表中的项目图像按钮实际上会出现一个删除按钮..所以当我长按列表上的另一个项目我想在我点击隐藏的第一个项目上创建该按钮...就像我每次长按项目时出现一个图像按钮,当我点击另一个项目时,该按钮将是隐藏和我点击新项目的按钮将显示..如何做任何输入将非常感激,或者如果你可以给我一些有效的方式这样做...请分享。 tnx很多
答案 0 :(得分:1)
您可以跟踪上一个删除按钮,因为只允许一个。在长按单击侦听器中,您可以删除上一个按钮并创建一个新按钮。
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
。
答案 1 :(得分:1)
试试这个,
假设您正在使用适配器列表...
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;
}
});
答案 2 :(得分:0)
问题非常令人困惑......但是根据我的理解,你需要检测列表项上的长按。您是否尝试过AdapterView.OnItemLongClickListener。
somelist.setOnItemLongClickListener (new OnItemLongClickListener() {
public boolean onItemLongClick(AdapterView parent, View view, int position, long id) {
//do your stuff of showing\hiding button here...
}
});