Java 如何禁用按钮并清除arraylist?
我有一些按钮和数组列表,我的按钮有条件Java 如何禁用按钮并清除arraylist?,java,android,list,conditional-statements,Java,Android,List,Conditional Statements,我有一些按钮和数组列表,我的按钮有条件 if(list.isEmpty){ button.setEnabled(false) } 和textTotalFinalPrice将值设置为0 但在我的例子中,该函数实际工作,但必须有2次单击才能设置值textotalfinalprice,并禁用按钮 如果只需单击一次,请单击ArrayList不清除数据 我尝试了list.clear()仍然不工作 代码: public void calculateTotalPrice(){
if(list.isEmpty){
button.setEnabled(false)
}
和textTotalFinalPrice
将值设置为0
但在我的例子中,该函数实际工作,但必须有2次单击才能设置值textotalfinalprice
,并禁用按钮
如果只需单击一次,请单击ArrayList
不清除数据
我尝试了list.clear()代码>仍然不工作
代码:
public void calculateTotalPrice(){
activity.header.grandTotalPrice();
activity.textTotalFinalPrice.setText(NumberFormat.getCurrencyInstance(new Locale("id", "id")).format(activity.header.getFinalTotal()));
}
private void conditionCartsSize() {
if (activity.header.getCarts().isEmpty()){
activity.textFinishOrder.setEnabled(false);
}else{
activity.textFinishOrder.setEnabled(true);
activity.textFinishOrder.setOnClickListener(view -> {
PrintHelper.bluetoothPrint(activity, activity.header);
calculateTotalPrice();
AlertDialog dialog = new AlertDialog.Builder(activity)
.setTitle("Pesanan Berhasil")
.setMessage("Silahkan Ambil Struk Anda")
.create();
dialog.show();
activity.header.getCarts().removeAll(activity.header.getCarts());
notifyDataSetChanged();
});
}
}
如果您的回答符合以下条件,请检查getCarts()
的size
,我将不胜感激
private void conditionCartsSize() {
if (activity.header.getCarts().size>0){
activity.textFinishOrder.setEnabled(false);
}else{
activity.textFinishOrder.setEnabled(true);
activity.textFinishOrder.setOnClickListener(view -> {
PrintHelper.bluetoothPrint(activity, activity.header);
calculateTotalPrice();
AlertDialog dialog = new AlertDialog.Builder(activity)
.setTitle("Pesanan Berhasil")
.setMessage("Silahkan Ambil Struk Anda")
.create();
dialog.show();
activity.header.getCarts().removeAll(activity.header.getCarts());
notifyDataSetChanged();
});
}
}
尝试使用list=new ArrayList() 固定的
只需对新ArrayList进行一点自定义,如下所示:
activity.header=newheader(0,0,0,0,0,0,new ArrayList())代码>尝试检查大小,如果是零,我也尝试过,但遇到同样的问题。顺便说一句,isEmpty
=list.Size()==0
,它只是简单地显示一些代码在另一个代码中没有任何问题,只是如何使用new Arraylist()清除列表并初始化一个新的列表
并查看如果getCarts(),size>0
按钮将始终处于禁用状态,请重新检查我的问题。我明白了,只需进行一点自定义。谢谢你,伙计!