如何在Android中为不同的Listview项目使用不同的变量或数组?
我正在尝试制作一个电子商务应用程序。当我单击添加“+”符号时,数量和小计是根据价格计算的。请帮助我重新初始化如何在Android中为不同的Listview项目使用不同的变量或数组?,android,listview,Android,Listview,我正在尝试制作一个电子商务应用程序。当我单击添加“+”符号时,数量和小计是根据价格计算的。请帮助我重新初始化列表视图中每个项目的变量。第一项工作正常 我解决了这个问题。但我并不满意。有人可以通过使用列表或数组来改进它吗 add.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) {
列表视图
中每个项目的变量。第一项工作正常
我解决了这个问题。但我并不满意。有人可以通过使用列表或数组来改进它吗
add.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String q= (String) quantity.getText();
Double d = Double.parseDouble(q);
qty=d;
qty++;
Double sub_total =currentItem.getPrice();
item_sub_total = qty*sub_total;
quantity.setText(String.valueOf(qty));
subtotal.setText(String.valueOf(item_sub_total));
}
});
创建一个类并相应地声明其成员。现在,无论何时需要添加新行,都要创建该类的对象并为其赋值 例如: 创建一个名为MyEntity的类
public class MyEntity {
String entity = "";
double price = 0.0;
int quantity = 0;
double subTotal = 0.0;
public MyEntity(String entity, double price, int quantity, double subTotal) {
this.entity = entity;
this.price = price;
this.quantity = quantity;
this.subTotal = subTotal;
}
}
用法:
在活动中或创建列表的任何位置创建列表
List<MyEntity> myEntityList = new ArrayList<>();
将此列表传递给列表视图适配器并相应地使用
您可以访问以下字段:
myEntity.price
或
myEntity.subTotal等您可以对数据进行更改,然后刷新列表视图。add.setOnClickListener(new view.OnClickListener(){@Override public void onClick(view view view){Long sub_total=currentItem.getPrice();item_sub_total=qty*sub_total;quantity.setText(String.valueOf(qty));subtotal.setText(String.valueOf(item_sub_total));};
add.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String q = (String) quantity.getText();
Double d = Double.parseDouble(q);
qty=d;
qty++;
Double sub_total =currentItem.getPrice();
item_sub_total = qty*sub_total;
MyEntity myEntity = new MyEntity("Onion", sub_total, qty, item_sub_total);
myEntityList.add(myEntity);
}
});