0

これは私のコードからのいくつかの行です:

vFlipper = (ViewFlipper) findViewById(R.id.viewflipper);<BR>
listView = (ListView) findViewById(R.id.firstlayout);<BR>
listView.setAdapter(stationaryAdapter);

オブジェクトのリスト。それらをクリックすると、すべてのオブジェクトに関する詳細情報が表示されます。現時点では、正常に動作しています。しかし、ボタンをクリックすると、他のオブジェクトが読み込まれますが、レイアウトが異なると、クリック可能な機能が機能しなくなります。

クリックすると、次の行が読み取られます。

vFlipper.setDisplayedChild(1);<BR>
listView = (ListView) findViewById(R.id.secondlv);<BR>
listView.setAdapter(mobileAdapter);

レイアウトを変更しなくても、新しいリストで動作します。

誰かが手がかりを持っていますか?

4

1 に答える 1

0

「adapter.get(position)」をクリックした位置にあるアイテムを取得するためにアダプターを呼び出す場合、おそらく2番目のアダプターではなく最初のアダプターを使用しています。

最初のレイアウトでは、次のことを行う必要があります。

listView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent,View view, int position, long id) {
stationaryAdapter.getItem(position));

}
});

2番目のレイアウトの場合:

listView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent,View view, int position, long id) {
mobileAdapter.getItem(position));

}
});
于 2012-05-02T16:46:06.827 に答える