私のアプリケーションでは、テーブル内の行のようにリンクされたカスタム ListView をそれぞれ持つ ViewPager があります。問題は、最初のページで ListView をスクロールしてから ViewPager をスクロールすると、最初のページの ListView と 2 番目のページの ListView がずれることです。最初のリストビューには説明付きの TextView があり、次にデータ付きの 4 つの列があり、次のリストビューには説明のない 6 つの列があるため、それらがずれていると非常に複雑になるため、リストビューを整列する必要があります。では、すべてのlistViewを一度にスクロールするにはどうすればよいですか??
編集:
Rahul Parsani に感謝します...私は最終的にこれを行う方法を管理しました...別のフラグメントに listView があり、フラグメントの数が定義されていない場合、これが答えです:
final ArrayList<ListView> lvs = new ArrayList<ListView>();
for (int j = 0; j < adapter.getCount(); j++) {
YourFragment fragJ = (YourFragment) adapter.getItem(j);
final ListView listViewJ = fragJ.lv;
lvs.add(listViewJ);
}
for (int j = 0; j < lvs.size(); j++) {
final int x = j;
lvs.get(j).setOnTouchListener(new OnTouchListener() {
boolean dispatched = false;
@Override
public boolean onTouch(View v, MotionEvent event) {
if (!dispatched) {
dispatched = true;
if (x != 0) {
lvs.get(x - 1).dispatchTouchEvent(event);
};
if (x != lvs.size() - 1) {
lvs.get(x + 1).dispatchTouchEvent(event);
}
}
dispatched = false;
return false;
}
});
}