我有一个列表视图,显示在下面链接的图像中。我想要的是点击"接受订单"按钮,该按钮将被隐藏,另一个最初隐藏的togglebutton将变为可见。此行为只会影响单击的行,不会影响列表视图中的其他行(其他行仍将显示接受订单按钮)。如何为按钮设置onclicklistener?
答案 0 :(得分:0)
1 - 首先,您需要为每行添加自定义对象列表。 每个Object都应该有一个布尔值,用于控制每个不同行的按钮状态。
示例:
public class Order {
private String title;
private boolean isAccepted;
public Price(String title, boolean isAccepted) {
this.title = title;
this.isAccepted = isAccepted;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public boolean isAccepted() {
return isAccepted;
}
public void setIsAccepted(boolean isAccepted) {
this.isAccepted = isAccepted;
}
}
2 - 创建Order类的ArrayList(或任何你拥有的)并设置数据。您的逻辑可以是“if isAccepted == true ,然后隐藏显示订单按钮”使用此逻辑设置数据。
3 - 设置适配器以列出listView中的项目。在适配器中,将onclicklistener设置为按钮,当您单击按钮时,将布尔值设置在列表的正确位置。然后通知/更新您的适配器。
如果您还有其他问题,请查看this simple example。
答案 1 :(得分:0)
对于ListView,您必须设置一个提供
的适配器public View getView(int position, View convertView, ViewGroup parent)
您可以为按钮设置onClickListener
,并为相应的togglebutton设置可见性。
特定视图由
引用convertView.searchViewById(int)
对于ListView示例,请查看here