私は、各タブにリストビューを含む4つのタブで構成されるタブレイアウトを実装しました。以前はlistviewと同じ設定を使用していましたが、タブホストではなく、うまくいきました。リストアイテムがクリックされると、新しいアクティビティが開始されます。しかし今はリストがクリック可能ではありません。今までは、すべてのタブを一度クリックしてスクロール/クリックすると完全に正常に動作します。私は両方を可能にする方法を教えてください。コードは次のとおりですアンドロイドタブレイアウトリストビューはクリックできません
tabHost = (TabHost) findViewById(android.R.id.tabhost);
tabHost.setup();
tabHost.setOnTabChangedListener(this);
list = (ListView) findViewById(R.id.listAll);
list.setEmptyView((TextView) findViewById(R.id.empty));
//list for all
tabHost.addTab(tabHost.newTabSpec(LIST_ALL).setIndicator("All Events").setContent(new TabContentFactory() {
public View createTabContent(String arg0) {
try{
Event event = new Event();
final String [] eventTitleArray = new String[XmlParser.eventsList.size()];
String [] eventDateArray = new String[XmlParser.eventsList.size()];
String [] eventImageLinkArray = new String[XmlParser.eventsList.size()];
for(int i=0;i<XmlParser.eventsList.size();i++){
event = XmlParser.eventsList.get(i);
eventTitleArray[i] = event.getTitle();
if(event.getDistance()!=0.0)
eventDateArray[i] = event.getsDate() +" - " +Double.toString(event.getDistance())+"mi";
else
eventDateArray[i] = event.getsDate();
eventImageLinkArray[i] = event.getImageLink();
Log.i(tag , "event detail"+event.getTitle());
}
list=(ListView)findViewById(R.id.listAll);
adapter= new LazyAdapter(HomeActivity.this, eventTitleArray,eventDateArray,eventImageLinkArray);
list.setAdapter(adapter);
list.setFocusable(false);
list.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1,
int position, long arg3) {
Intent intent = new Intent(HomeActivity.this, DisplayActivity.class);
Bundle b = new Bundle();
System.out.println("position in list:"+position);
System.out.println("title name in the list:"+eventTitleArray[position]);
b.putString("eventTitle", eventTitleArray[position]);
intent.putExtras(b);
startActivity(intent);
Toast.makeText(getApplicationContext(), "Detailed view for the Event", Toast.LENGTH_SHORT).show();
}
});
}
catch(Exception e){
e.printStackTrace();
}
return list;
}
}));
tabHost.addTab(tabHost.newTabSpec(LIST_TODAY).setIndicator("Events Today").setContent(new TabContentFactory() {
public View createTabContent(String arg0) {
return list;
}
}));
申し訳ありませんが、どのように表示されるかについては言及していませんか?また、もう一度質問を読んでください、私はちょうどもっと貴重な情報を追加しました –
それは奇妙でした。テキストは私の応答にあったが、なんらかの理由でレンダリングされなかった。 –
ありがとう...しかし、あなたは私の質問をもう一度読んだ。私はそれにいくつかの情報を加えた。リストはクリック可能/スクロール可能ですが、最後のウィジェットがクリックされた後にのみ –