你好我該如何選擇列表中的特定數據?如何在android中選擇列表中的特定數據?
我有這個名單
例如我在凱撒(這不是第一次,也不在列表的最後) 點擊我設置的片段
name.setText(obj.getName());
但出現的是Mogul(這是名單上的最後一個)
那麼我該如何選擇名稱呢?有任何想法嗎?
編輯:
這裏的每一個列表中的片段和適配器
public class LivestockDetailFragment extends Fragment {
private Livestock livestock;
private View view;
private ImageButton pencil;
private EditText name;
private ImageButton save;
public static LivestockDetailFragment newInstance(Livestock livestock) {
LivestockDetailFragment fragment = new LivestockDetailFragment();
Bundle bundle = new Bundle();
bundle.putSerializable(DVBoerConstants.DV_LIVESTOCK_EXTRA, livestock);
fragment.setArguments(bundle);
return fragment;
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
//Inflate the layout for this fragment_packages
view = inflater.inflate(R.layout.fragment_livestock_detail, container, false);
livestock = (Livestock) getArguments().getSerializable(DVBoerConstants.DV_LIVESTOCK_EXTRA);
//initLivestockDetailsView(view);
initializeEdit();
ViewPager pager = (ViewPager) view.findViewById(R.id.viewPager);
pager.setAdapter(new MyPagerAdapter(getActivity().getSupportFragmentManager()));
name.setText(livestock.getName());
return view;
}
private class MyPagerAdapter extends FragmentPagerAdapter {
public MyPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int pos) {
switch(pos) {
case 0: return LivestockDetailPageFragment.newInstance(livestock);
case 1: return LivestockMedicalHistoryPageFragment.newInstance(livestock);
case 2: return LivestockGalleryPageFragment.newInstance(livestock);
default: return LivestockDetailPageFragment.newInstance(livestock);
}
}
@Override
public int getCount() {
return 3;
}
private String tabtitles[] = new String[]{"Details", "Medical History", "Gallery"};
Context context;
@Override
public CharSequence getPageTitle(int position) {
return tabtitles[position];
}
}
/*RecyclerView recyclerView = (RecyclerView)view.findViewById(R.id.livestock_detail_recycler_view);
recyclerView.setHasFixedSize(true);
RecyclerView.LayoutManager layoutManager = new GridLayoutManager(getActivity(),1);
recyclerView.setLayoutManager(layoutManager);
LivestockDetailAdapter adapter = new LivestockDetailAdapter(getActivity(), livestock);
recyclerView.setAdapter(adapter);*/
private void initializeEdit(){
pencil = (ImageButton) view.findViewById(R.id.editName);
name = (EditText) view.findViewById(R.id.nameTextView);
save = (ImageButton) view.findViewById(R.id.saveName);
save.setOnClickListener(buttonList);
pencil.setOnClickListener(buttonList);
}
private View.OnClickListener buttonList = new View.OnClickListener(){
public void onClick(View view) {
switch (view.getId()){
case R.id.editName:
save.setVisibility(View.VISIBLE);
name.setFocusableInTouchMode(true);
KeyboardUtility.openKeyboard(getActivity());
pencil.setVisibility(View.INVISIBLE);
break;
case R.id.saveName:
pencil.setVisibility(View.VISIBLE);
name.setFocusableInTouchMode(false);
name.setFocusable(false);
save.setVisibility(View.INVISIBLE);
KeyboardCloseUtility.hideKeyboard(getActivity());
break;
}
}
};
}
發佈您的代碼如何處理列表項單擊偵聽器? –
如何在片段中獲取obj對象?請發佈您的適配器和片段代碼 – Valentun
您是否獲得最後一個值,即每個項目點擊時的大人物? –