here is my code
Setting values in Preference:
@Override
public View getView(int position, View convertView, ViewGroup parent) {
final ViewHolder holder;
if(convertView == null){
holder = new ViewHolder();
convertView=inflater.inflate(resource, null);
holder.tvItemName = (TextView) convertView.findViewById(R.id.tvItemName);
holder.tvPrice = (TextView) convertView.findViewById(R.id.tvPrice);
holder.bLess = (Button) convertView.findViewById(R.id.bLess);
holder.bAdd = (Button) convertView.findViewById(R.id.bAdd);
holder.etItemQuantity = (EditText) convertView.findViewById(R.id.etItemQuantity);
holder.bAddToCart = (Button) convertView.findViewById(R.id.bAddToCart);
convertView.setTag(holder);
}else {
holder = (ViewHolder) convertView.getTag();
}
holder.tvItemName.setText(itemModelList.get(position).getItemName());
holder.tvPrice.setText("Rs " + itemModelList.get(position).getSalesRate());
holder.bAdd.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
int qty = Integer.parseInt(holder.etItemQuantity.getText().toString().trim());
qty++;
holder.etItemQuantity.setText(""+qty);
}
});
holder.bLess.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
int qty = Integer.parseInt(holder.etItemQuantity.getText().toString().trim());
if(qty != 0){
qty--;
holder.etItemQuantity.setText(""+qty);
}
}
});
final String itemName = itemModelList.get(position).getItemName();
final String salesRate = itemModelList.get(position).getSalesRate();
holder.bAddToCart.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
SharedPreferences prefs = getSharedPreferences("my_prefs", MODE_PRIVATE);
SharedPreferences.Editor edit = prefs.edit();
edit.putString("itemName", itemName );
edit.putString("salesRate", salesRate );
edit.commit();
Toast.makeText(Items.this,"Added item to cart", Toast.LENGTH_LONG).show();
}
});
return convertView;
}
Retrieve data from preference:
public class CartDisplay extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.row_cart_display);
TextView tvItemName = (TextView) findViewById(R.id.tvItemName);
TextView tvSalesRate = (TextView) findViewById(R.id.tvSalesRate);
TextView tvTotalAmount = (TextView) findViewById(R.id.tvTotalAmount);
SharedPreferences prefs = getSharedPreferences("my_prefs", MODE_PRIVATE);
String restoredText = prefs.getString("text", null);
if (restoredText != null) {
String itemName = prefs.getString("itemName", "No itemName defined");//"No name defined" is the default value.
String salesRate = prefs.getString("salesRate", "0");//"0" is the default value.
tvItemName.setText(itemName);
tvSalesRate.setText("RS "+salesRate);
tvTotalAmount.setText("Total: RS" +salesRate);
}
}
idk why my code dont work
- iam trying to send itemname and salesrate to next activity but it wont display that in here it works if i use bundle or intents
- also i want to store etItemQuantity value in sharedprefrences btw idk how make qty variable global so that i can store the value on addToCart button click
really need help here guys, here is my full code