我正在使用android應用程序。在那裏,首先我需要存儲來自webservice的所有數據,然後從數據庫中查詢數據並在listview中進行更新。從列表視圖開始子項活動按鈕在android中單擊
我的列表視圖項目包含複選框和按鈕。當我點擊按鈕或複選框時,它正在工作(顯示LOG)正常,但我需要在列表視圖中單擊按鈕時啓動子活動。
這是我的Adapter類,
public class GuestListAdapter extends BaseAdapter{
Context context;
ArrayList<String > arrayListFirstValue;
ArrayList<String > arrayListSecondValue;
ArrayList<String > arrayListThirdValue;
public GuestListAdapter(Context mcontext, ArrayList<String> arrListFV,ArrayList<String> arrListSV,ArrayList<String> arrListGuestTV)
{
arrayListFirstValue =arrListFV;
arrayListSecondValue =arrLisSV;
arrayListThirdValue =arrListTV;
context = mcontext;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return arrayListFirstValue.size();
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return arrayListFirstValue.get(position);
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public View getView(int position, View view, ViewGroup parent) {
// TODO Auto-generated method stub
if (view == null) {
LayoutInflater inflater = LayoutInflater.from(parent.getContext());
view = inflater.inflate(R.layout.guest_list_item, parent, false);
}
TextView txtFirstValue = (TextView)view.findViewById(R.id.txt_firstname);
txtFirstValue .setText(arrayListFirstValue.get(position));
TextView txtSecondValue = (TextView)view.findViewById(R.id.txt_lastname);
txtSecondValue .setText(arrayListSecondValue.get(position));
TextView txtThirdValue = (TextView)view.findViewById(R.id.txt_guest_count);
txtThirdValue .setText(arrayListThirdValue.get(position));
Button btnInfo = (Button)view.findViewById(R.id.btn_info);
CheckBox checkBoxCheckins = (CheckBox)view.findViewById(R.id.checkBoxIsCheckedIn);
btnInfo.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
System.out.println("Adap button **********");
}
});
checkBoxCheckins.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
System.out.println("Adap checked **********");
}
});
return view;
}
}
最後我的問題是我需要啓動子活性,當我點擊列表視圖按鈕。 請告訴我如何做到這一點。
該項目工程和打印日誌但問題是我無法啓動子活動,記住一件事,我在自定義適配器類(Base適配器)中用out擴展活動,我無法啓動活動或啓動子活動不工作G。有沒有什麼辦法可以在自定義適配器類或任何解決方案中啓動兒童活動。 – Dhamodharan
我看到您的適配器構造函數具有上下文。您只需在'onClick'中傳遞該上下文。 –
首先感謝您的回覆,但我想在這裏告訴您一件事,那就是我在標籤欄中顯示列表視圖。當我點擊列表項中的按鈕時,需要在標籤欄中將我帶到另一個活動。所以我需要開始兒童活動。不是一個正常的意圖。請指導我。 – Dhamodharan