我想改变TEXT按钮上的按钮onclicklistener但对于每5行显示TEXT按钮相同的结果。我只是想更改文本按钮1个按钮点击的ListView自定义ArrayAdapter - 改变从按钮TEXT按钮OnClickListener
XML布局childview
<Button
android:id="@+id/btn_seatmap"
style="@style/buttonSeatMap"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/txt_kereta_tiba"
android:layout_toRightOf="@+id/txt_info_seat"
android:focusable="false"
android:focusableInTouchMode="false"
android:text="@string/btn_seatmap" />
自定义适配器XML布局的ListView
<ListView
android:id="@+id/list_kereta"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_above="@+id/btn_pilih_jadwal"
android:layout_below="@+id/txt_title_jadwal_kai"
android:layout_marginBottom="10dp"
android:background="@android:color/white"
android:choiceMode="singleChoice"
android:dividerHeight="1dp"
android:focusable="true"
android:scrollbars="none" />
这里代码
@Override
public View getView(final int arg0, View arg1, ViewGroup arg2) {
View view = arg1;
ListHolder listHolder = null;
if (view == null) {
LayoutInflater inflater = ((Activity) context).getLayoutInflater();
view = inflater.inflate(layoutResourceId, arg2, false);
listHolder = new ListHolder();
listHolder.layout = (RelativeLayout) view
.findViewById(R.id.layout_jadwal_kai);
listHolder.txtNama = (TextView) view
.findViewById(R.id.txt_nama_kereta);
listHolder.txtBerangkat = (TextView) view
.findViewById(R.id.txt_kereta_brkt);
listHolder.txtHarga = (TextView) view
.findViewById(R.id.txt_harga_kereta);
listHolder.txtTiba = (TextView) view
.findViewById(R.id.txt_kereta_tiba);
listHolder.txtClass = (TextView) view
.findViewById(R.id.txt_kelas_kereta);
listHolder.txtSeat = (TextView) view
.findViewById(R.id.txt_info_seat);
listHolder.btnSeatMap = (Button) view
.findViewById(R.id.btn_seatmap);
CheckSeatOnProgress = false;
view.setTag(listHolder);
} else {
listHolder = (ListHolder) view.getTag();
}
listHolder.btnSeatMap.setTag(listHolder);
listHolder.btnSeatMap.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
ListHolder holder = (ListHolder) v.getTag();
holder.btnSeatMap.setText("TEST");
// listHolder.btnSeatMap.setText("TEST");
});
适配器代码
public void refreshListJadwal() {
adapter = new AdapterListKereta(getActivity(),
R.layout.custom_list_jadwalkai, setGetJadwals, dataJadwalKereta);
listKereta.setAdapter(adapter);
}
“TEST” 显示,每5行。 请帮忙。如果你想点击,那么你可以使用ArrayList后更改按钮的文字谢谢
邮适配器代码 – Raghavendra
@Raghavendra我已经更新了我的问题 –
在onclick u能尝试这样呢? ((按钮)v)的.setText( “TEST”); ? – Raghavendra