如何從列表視圖項目更改文本視圖中的文本。 我有一個productAdapter,現在我嘗試添加一個onclicklistener的項目。 當我點擊它們時,文本應該改變,我在我的列表視圖項目中有2個按鈕。 onclicklistener作品btw我outprintet單擊項目的工作位置。listview項目按鈕更改文本
public class ProductAdapter extends ArrayAdapter<Product>{
Context context;
int layoutResourceId;
List<Product> data = null;
public ProductAdapter(Context context, int layoutResourceId, List<Product> yal) {
super(context, layoutResourceId, yal);
this.layoutResourceId = layoutResourceId;
this.context = context;
this.data = yal;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View row = convertView;
prodHolder holder = null;
final int pos=position;
if(row == null)
{
LayoutInflater inflater = ((Activity)context).getLayoutInflater();
row = inflater.inflate(layoutResourceId, parent, false);
holder = new prodHolder();
holder.imgIcon = (ImageView)row.findViewById(R.id.imgIcon);
holder.txtTitle = (TextView)row.findViewById(R.id.txtTitle);
holder.txtPrice = (TextView)row.findViewById(R.id.txtPrice);
holder.txtAmount = (TextView)row.findViewById(R.id.txtAmount);
holder.minus = (Button)row.findViewById(R.id.minbtn);
holder.plus = (Button)row.findViewById(R.id.plusbtn);
row.setTag(holder);
}
else
{
holder = (prodHolder)row.getTag();
}
holder.minus.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
onMinButtonClicked(pos,prod,v);
}
});
holder.plus.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
onPlusButtonClicked(pos,prod,v);
}
});
return row;
}
private void onMinButtonClicked(int position,Product prod,View row) {
short am= prod.getAmount();
if(am>0){
am=(short) (am-1);
}
prod.setAmount(am);
SerializeIt si=new SerializeIt();
si.storeMyData(prod,context);
}
private void onPlusButtonClicked(int position,Product prod,View row) {
short tt=(short) (prod.getAmount()+1);
prod.setAmount(tt);
SerializeIt si=new SerializeIt();
si.storeMyData(prod,context);
}
static class prodHolder
{
ImageView imgIcon;
TextView txtTitle;
TextView txtPrice;
TextView txtAmount;
Button minus;
Button plus;
}
}
希望一些能幫助我:)
當你寫holder.txtAmount.settext( 「減」)是什麼發生;和holder.txtAmount.settext(「PLUSH」);在onclick? – 2013-03-12 10:16:28
感謝這個工程;) – 2013-03-12 10:33:44