Есть ли что-то вроде onclick / onfocus для tabhost / tabspec? - PullRequest
0 голосов
/ 10 февраля 2012

У меня есть полностью работающее приложение tabhost / tabspec (первое работающее приложение, созданное самостоятельно: D), см. Код ниже.Теперь следующее: когда нажата вкладка NORM, я хочу запустить несколько строк кода.Есть ли что-то вроде щелчка для tabhost / tabspec.Любая помощь приветствуется

public class AndroidTabLayoutActivity extends TabActivity {

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    TabHost tabHost = getTabHost();

    // Tab for Dag
    TabSpec dagspec = tabHost.newTabSpec("Dag");
    dagspec.setIndicator("DagRooster", getResources().getDrawable(R.drawable.icon_dag_tab));
    Intent dagIntent = new Intent(this, DagActivity.class);
    dagspec.setContent(dagIntent);


    // Tab for Norm
    TabSpec normspec = tabHost.newTabSpec("Norm");
    // setting Title and Icon for the Tab
    normspec.setIndicator("Normaal", getResources().getDrawable(R.drawable.icon_norm_tab));
    Intent normIntent = new Intent(this, NormActivity.class);
    normspec.setContent(normIntent);


    // Tab for Instel
    TabSpec instelspec = tabHost.newTabSpec("Instel");
    instelspec.setIndicator("Info", getResources().getDrawable(R.drawable.icon_setting_tab));
    Intent instelIntent = new Intent(this, InstelActivity.class);
     instelspec.setContent(instelIntent);


    // Adding all TabSpec to TabHost
    tabHost.addTab(dagspec); // Adding photos tab
    tabHost.addTab(normspec); // Adding songs tab
    tabHost.addTab(instelspec); // Adding videos tab
    tabHost.setCurrentTab(2);

        }

}

Ответы [ 2 ]

1 голос
/ 24 ноября 2012

Вам просто нужно добавить TabHost в OnTabChangeListener () следующим образом:

// Exit Application when press Exit tab
    tabHost.setOnTabChangedListener(new TabHost.OnTabChangeListener() {     
        @Override
        public void onTabChanged(String arg0) {
            if (getTabHost().getCurrentTabTag().equals("Exit")){
                finish();                   
            }
        }
    });
0 голосов
/ 10 февраля 2012

Я думаю, вы можете использовать

tabHost.setOnTabChangedListener(new OnTabChangeListener() {
   @Override
  public void onTabChanged(String arg0) {
   Log.i("param1", "param2" + tabHost.getCurrentTab());
  }     
       });  

или

Вы можете использовать подход, обсужденный в этом обсуждении SO .

...