如何在单击列表视图行中的按钮时添加获取textview
的引用?
** ---------------------------------
TextView
Button
--------------------------------- **
这是我的列表视图的示例。
我使用View Holder概念动态操作listview
。
如果我点击按钮,textview
的值想要更改。
我曾尝试在点击按钮时更改texview
值的值,但是它会更新我点击的每个按钮的最后一行textview
值。
谢谢和问候。
最后我得到了以下答案:
public void onClick(View v) {
// TODO Auto-generated method stub
LinearLayout layout=(LinearLayout) v.getParent();
TextView text=(TextView)layout.findViewById(R.id.qcountHD);
if (view.inc.getId() == v.getId()) {
int count = Integer.parseInt(text.getText().toString());
text.setText("" + (++count));
} else if (view.dec.getId() == v.getId()) {
int count = Integer.parseInt(text.getText().toString());
if (!(count == 0)) {
text.setText("" + (--count));
}
}
}
感谢您的支持.....
答案 0 :(得分:2)
最后我得到了答案,我们可以使用父布局获取任何子引用。 当您单击按钮时,它指向当前父级和它的子级。
public void onClick(View v) {
// TODO Auto-generated method stub
RelativeLayout layout=(RelativeLayout) v.getParent();
TextView text=(TextView)layout.findViewById(R.id.qcountHD);
TextView product=(TextView)layout.findViewById(R.id.productHD);
TextView price=(TextView)layout.findViewById(R.id.priceHD);
Log.d("Current Product ",product.getText().toString());
Log.d("Current Price ",price.getText().toString());
Log.d("Current Quantity ",text.getText().toString());
if (view.inc.getId() == v.getId()) {
int count = Integer.parseInt(text.getText().toString());
text.setText("" + (++count));
} else if (view.dec.getId() == v.getId()) {
int count = Integer.parseInt(text.getText().toString());
if (!(count == 0)) {
text.setText("" + (--count));
}
}
}
谢谢....