私はリストビューで作業しています。そのリストビューにテキストビューとボタンを追加しました。どのボタンがクリックされたかを知る方法.そのボタンをクリックすると、関連するテキストを取得する必要がありますか?
誰でも私を助けることができますか?
私はリストビューで作業しています。そのリストビューにテキストビューとボタンを追加しました。どのボタンがクリックされたかを知る方法.そのボタンをクリックすると、関連するテキストを取得する必要がありますか?
誰でも私を助けることができますか?
以下のサンプルコードを参照してください...あなたはこれからアイデアを得ます..
ここで list_v はリストビューです
list_v.setAdapter(new ListViewAdapter_test(
this));
public class ListViewAdapter_test extends BaseAdapter {
private LayoutInflater mInflater;
public ListViewAdapter_test(Context con) {
// TODO Auto-generated constructor stub
mInflater = LayoutInflater.from(con);
}
public int getCount() {
// TODO Auto-generated method stub
return a_product_id.size();
}
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
public View getView(final int position, View convertView,
ViewGroup parent) {
// TODO Auto-generated method stub
final ListContent holder;
View v = convertView;
if (v == null) {
v = mInflater.inflate(R.layout.scan_row1, null);
holder = new ListContent();
holder.name = (TextView) v.findViewById(R.id.sc_textname);
holder.total_rate = (Button) v.findViewById(R.id.button1);
v.setTag(holder);
} else {
holder = (ListContent) v.getTag();
}
holder.name.setId(position);
holder.total_rate.setId(position);
holder.total_rate.setOnClickListener(mOnTitleClickListener3);
try {
holder.name.setText("" + a_product_name.get(position));
holder.total_rate.setText("Read " + a_totreviews.get(position)
+ " reviews");
} catch (Exception e) {
// TODO: handle exception
}
return v;
}
}
static class ListContent {
TextView name;
Button total_rate;
}
public OnClickListener mOnTitleClickListener3 = new OnClickListener() {
public void onClick(View v) {
final int position = list_v
.getPositionForView((View) v.getParent());
/** do your code here whatever you want */
}
};
リスト項目のクリックを使用せずにボタンを追加したい場合は、セルを作成してボタンを追加するときに、button.setTag(int) を使用してタグを設定できます。セルの位置。したがって、ボタンのクリック リスナーでは、button.getTag() でクリックされたボタンの位置を取得できます。テキスト行が内部にあるデータ構造がある場合は、テキストを取得できます。