編集:私はそれを理解しました、ありがとう
私は今、ViewPagerの各ページに個別のListViewを実装しようと永遠に努力してきました。このチュートリアルはかなりよく理解していますが、各ページに使用されるListViewは1つしか作成されません。
各ページに複数のListViewを設定できるようにしたいのですが、そこから各ページのListViewのonClickで何が発生するかを制御できます。私のアプリは(チュートリアルのように)1つのListViewで動作していますが、複数のListViewでひどく苦労しています。
私のコードは以下に掲載されており、さまざまなことを試しましたが、開発を進める必要があります。助けてくれてありがとう
private static class MyAdapter extends FragmentPagerAdapter implements
TitleProvider {
public MyAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
return ArrayListFragment.newInstance(position);
}
@Override
public int getCount() {
return Arrays.TITLES.length;
}
public String getTitle(int position) {
return Arrays.TITLES[position];
}
}
public static class ArrayListFragment extends ListFragment {
int mNum;
/**
* Create a new instance of CountingFragment, providing "num" as an
* argument.
*/
static ArrayListFragment newInstance(int num) {
ArrayListFragment f = new ArrayListFragment();
// Supply num input as an argument.
Bundle args = new Bundle();
args.putInt("num", num);
f.setArguments(args);
return f;
}
/**
* When creating, retrieve this instance's number from its arguments.
*/
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mNum = getArguments() != null ? getArguments().getInt("num") : 1;
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.list_layout, container, false);
return v;
}
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
setListAdapter(new ArrayAdapter<String>(getActivity(),
android.R.layout.simple_list_item_1, Arrays.accTEAMS));
}
@Override
public void onListItemClick(ListView l, View v, int position, long id) {
super.onListItemClick(l, v, position, id);
Log.i("FragmentList", "Item clicked: " + id);
}
}
これは私のListFragmentsの1つです:
public class ACCfragment extends ListFragment {
View v;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
return inflater.inflate(R.layout.list_layout, null);
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(getActivity(),
android.R.layout.simple_list_item_1, Arrays.accTEAMS);
setListAdapter(adapter);
}
@Override
public void onListItemClick(ListView l, View v, int position, long id) {
}