Integer GetterValue 未在 TextView 中设置
Integer GetterValue is not set in TextView
在我的应用程序中,我在 Bean Class 中使用 Getter 和 Setter。我在 setter 中设置了一个值,并尝试使用 getter 获取该值。
Setter 值在 Log.e 中打印,但 getter 值未在 TextView 中设置。
这是我的代码:
public class CartRes {
private String CartcategoryName;
private String CartproductName;
private String product_id;
private int CartPrice;
private int CartCount;
public int getCartPrice() {
Log.e("Product Check BeanGet", String.valueOf(CartPrice));
return CartPrice;
}
public void setCartPrice(int cartPrice) {
CartPrice = cartPrice;
Log.e("Product Check Bean", String.valueOf(CartPrice));
}
public int getCartCount() {
return CartCount;
}
public void setCartCount(int cartCount) {
CartCount = cartCount;
}
}
Getter 代码片段:
viewHolder.cartProduct.setText(cartRes.getCartproductName());
viewHolder.cartQuantity.setText(cartRes.getCartcategoryName());
viewHolder.cartCount.setText(cartRes.getCartCount()); //Not getting any value
viewHolder.cartPrice.setText(cartRes.getCartPrice()); //Not getting any value
Setter 代码段:
cartRes = new CartRes();
cartRes.setProduct_id(cartcursor.getString(cartcursor.getColumnIndex(DbHelper.CART_PDT_ID)));
cartRes.setCartproductName(cartcursor.getString(cartcursor.getColumnIndex(DbHelper.CART_PDT_NAME)));
cartRes.setCartcategoryName(cartcursor.getString(cartcursor.getColumnIndex(DbHelper.CART_CAT_NAME)));
cartRes.setCartCount(cartcursor.getInt(cartcursor.getColumnIndex(DbHelper.CART_QUANTITY)));
cartRes.setCartPrice(Integer.parseInt(cartcursor.getString(cartcursor.getColumnIndex(DbHelper.CART_PRICE))));
cartcursor.moveToNext();
cartBasket.add(cartRes);
}
ViewHoder:
public static class ViewHolder {
public TextView cartProduct,
cartQuantity,
cartCount,
cartPrice,
cartPriceDum;
}
LogCat 值:
03-17 16:24:10.708 16567-16567/? E/Product 检查:PI 16 PistaIce Cream 2 360
03-17 16:24:10.710 16567-16567/? E/Product 检查:PI 13 ButterScotchIce Cream 1 200
03-17 16:24:10.710 16567-16567/? E/Product 检查:PI 11 ChocoIce Cream 1 140
03-17 16:24:10.711 16567-16567/? E/Product 检查:PI 12 草莓冰淇淋 1 100
03-17 16:24:10.711 16567-16567/? E/Product 检查:PI 10 Vennila 冰淇淋 1 70
尝试将其转换为字符串。
viewHolder.cartCount.setText(cartRes.getCartCount()+"");
viewHolder.cartPrice.setText(cartRes.getCartPrice()+"");
您不能为 Textview 设置 Integer 将整数转换为字符串并将其设置为文本视图。
因为值是 int
和 setText()
期望 String
你应该这样做:
viewHolder.cartCount.setText(String.valueOf(cartRes.getCartCount()));
viewHolder.cartPrice.setText(String.valueOf(cartRes.getCartPrice()));
或者您也可以尝试 "trick" 将 ""
after/before int
viewHolder.cartCount.setText(""+cartRes.getCartCount());
viewHolder.cartPrice.setText(""+cartRes.getCartPrice());
在我的应用程序中,我在 Bean Class 中使用 Getter 和 Setter。我在 setter 中设置了一个值,并尝试使用 getter 获取该值。
Setter 值在 Log.e 中打印,但 getter 值未在 TextView 中设置。
这是我的代码:
public class CartRes {
private String CartcategoryName;
private String CartproductName;
private String product_id;
private int CartPrice;
private int CartCount;
public int getCartPrice() {
Log.e("Product Check BeanGet", String.valueOf(CartPrice));
return CartPrice;
}
public void setCartPrice(int cartPrice) {
CartPrice = cartPrice;
Log.e("Product Check Bean", String.valueOf(CartPrice));
}
public int getCartCount() {
return CartCount;
}
public void setCartCount(int cartCount) {
CartCount = cartCount;
}
}
Getter 代码片段:
viewHolder.cartProduct.setText(cartRes.getCartproductName());
viewHolder.cartQuantity.setText(cartRes.getCartcategoryName());
viewHolder.cartCount.setText(cartRes.getCartCount()); //Not getting any value
viewHolder.cartPrice.setText(cartRes.getCartPrice()); //Not getting any value
Setter 代码段:
cartRes = new CartRes();
cartRes.setProduct_id(cartcursor.getString(cartcursor.getColumnIndex(DbHelper.CART_PDT_ID)));
cartRes.setCartproductName(cartcursor.getString(cartcursor.getColumnIndex(DbHelper.CART_PDT_NAME)));
cartRes.setCartcategoryName(cartcursor.getString(cartcursor.getColumnIndex(DbHelper.CART_CAT_NAME)));
cartRes.setCartCount(cartcursor.getInt(cartcursor.getColumnIndex(DbHelper.CART_QUANTITY)));
cartRes.setCartPrice(Integer.parseInt(cartcursor.getString(cartcursor.getColumnIndex(DbHelper.CART_PRICE))));
cartcursor.moveToNext();
cartBasket.add(cartRes);
}
ViewHoder:
public static class ViewHolder {
public TextView cartProduct,
cartQuantity,
cartCount,
cartPrice,
cartPriceDum;
}
LogCat 值:
03-17 16:24:10.708 16567-16567/? E/Product 检查:PI 16 PistaIce Cream 2 360
03-17 16:24:10.710 16567-16567/? E/Product 检查:PI 13 ButterScotchIce Cream 1 200
03-17 16:24:10.710 16567-16567/? E/Product 检查:PI 11 ChocoIce Cream 1 140
03-17 16:24:10.711 16567-16567/? E/Product 检查:PI 12 草莓冰淇淋 1 100
03-17 16:24:10.711 16567-16567/? E/Product 检查:PI 10 Vennila 冰淇淋 1 70
尝试将其转换为字符串。
viewHolder.cartCount.setText(cartRes.getCartCount()+"");
viewHolder.cartPrice.setText(cartRes.getCartPrice()+"");
您不能为 Textview 设置 Integer 将整数转换为字符串并将其设置为文本视图。
因为值是 int
和 setText()
期望 String
你应该这样做:
viewHolder.cartCount.setText(String.valueOf(cartRes.getCartCount()));
viewHolder.cartPrice.setText(String.valueOf(cartRes.getCartPrice()));
或者您也可以尝试 "trick" 将 ""
after/before int
viewHolder.cartCount.setText(""+cartRes.getCartCount());
viewHolder.cartPrice.setText(""+cartRes.getCartPrice());