グリーティング、タブ上のOnClickListenerが機能しない
私のTabActivityの現在選択されているタブをクリックすると、Clickイベントを取得しようとしています。 onTabChangedHandlerは、タブが変更されたときにのみ呼び出され、現在アクティブなタブがクリックされている場合は呼び出されません。デバッガは、私のTabHost内にTabWidgetのために登録されたonClickListenerを持っていると伝えます。
間違った表示に登録していますか?
また、タブのコンテキストメニューを作成できません。その内容についてのみ、この問題は関係していますか?
public class TestDroidViewTab extends TabActivity
implements TabContentFactory
, OnTabChangeListener, OnClickListener {
private static final String LOG_KEY = "TEST";
ListView listView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
final TabHost tabHost = getTabHost();
TabHost.TabSpec ts = tabHost.newTabSpec("ID_1");
ts.setIndicator("1");
ts.setContent(this);
tabHost.addTab(ts);
ts = tabHost.newTabSpec("ID_2");
ts.setIndicator("2");
ts.setContent(this);
tabHost.addTab(ts);
ts = tabHost.newTabSpec("ID_3");
ts.setIndicator("3");
ts.setContent(this);
tabHost.addTab(ts);
tabHost.setOnClickListener(this);
tabHost.setOnTabChangedListener(this);
}
public void onClick(View v) {
Log.d(LOG_KEY, "OnClick");
}
public void onTabChanged(String tabId) {
Log.d(LOG_KEY, "OnTabChanged");
}
は、あなたが以前のようにタブの「クリック可能」を取得するためにスーパーメソッドを呼び出すことになっていませんか?これを試してみてくださいこのコードを追加すると、マウスが光りますが、このタブのlistActivityは表示されません。 –
私の間違い申し訳ありませんが、爆弾のような作品、私はさらに下に引き継ぐ余分なコードを持っていた。 –
私はコードに間違いがあると思う...ここでは、Tabhostの代わりにgetTabHost ..... –