Android标签按钮:处理点击/点击事件

时间:2011-05-13 00:01:16

标签: android button tabs click handle

请参阅以下代码片段:

// Create an Intent to launch an Activity for the tab (to be reused)
intent = new Intent().setClass(this, HomeTabActivity.class);

// Initialize a TabSpec for each tab and add it to the TabHost
spec = tabHost.newTabSpec("home").setIndicator("Home", 
               res.getDrawable(R.drawable.ic_tab_home)).setContent(intent);
tabHost.addTab(spec);

现在,当我点击一个标签按钮时,它会显示相应的活动,但之后我再次点击该按钮,我想要检测到这个点击,即使该标签实际上是“当前”或活动标签,仍然存在去做这个?我在spec中找不到任何set listener方法。

2 个答案:

答案 0 :(得分:1)

好吧,我认为作为标签控件的一部分没有任何功能。你可以尝试一些事情。

  1. 覆盖HomeTabActivity上的onNewIntent方法,看看每次点击标签时是否发送了意图,但我对此表示怀疑。
  2. 您可以尝试在TabHost上的getCurrentTabView 方法返回的视图上放置一个侦听器

答案 1 :(得分:0)

使用setListener(TabWidgetActivity)调用下面的方法;在创建标签之前调用它。

    void setListener(final TabActivity tabActivity)
    {
        tabActivity.getTabHost().setOnTabChangedListener(new OnTabChangeListener()         {

            public void onTabChanged(String tabId) 
            {

            }
        });

        tabActivity.getTabHost().setOnLongClickListener( new OnLongClickListener() {    

            public boolean onLongClick(View v) 
            {

                return false;
            }
        });
    }