2 番目のタブを押すと、インターネットが利用可能かどうかを確認します。そうでない場合は、前のタブに戻る必要があります。そのために、私は tab.select(); を使用しています。しかし、それは機能していません、誰かが私を助けることができますか?? 問題があるかどうかはわかりませんが、このコードは onCreate メソッド内にあります。
ActionBar actionBar = getActionBar();
actionBar.setDisplayShowTitleEnabled(false);
actionBar.setDisplayHomeAsUpEnabled(true);
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
final Tab myFiles = actionBar.newTab();
myFiles.setText("Meus Arquivos");
myFiles.setTabListener(new TabListener() {
@Override
public void onTabUnselected(Tab tab, FragmentTransaction ft) {
// TODO Auto-generated method stub
}
@Override
public void onTabSelected(Tab tab, FragmentTransaction ft) {
FilesFragment fragment = (FilesFragment) getFragmentManager().findFragmentById(R.id.files_frag);
fragment.loadView();
}
@Override
public void onTabReselected(Tab tab, FragmentTransaction ft) {
// TODO Auto-generated method stub
}
});
actionBar.addTab(myFiles, 0);
Tab downloads = actionBar.newTab();
downloads.setText("Downloads");
downloads.setTabListener(new TabListener() {
@Override
public void onTabUnselected(Tab tab, FragmentTransaction ft) {
// TODO Auto-generated method stub
}
@Override
public void onTabSelected(Tab tab, FragmentTransaction ft) {
if (AndroidUtil.isNetworkAvaliable(getApplicationContext())) {
//Some Code
} else {
Log.d(Constants.MAIN_VIEW_ACTIVITY, "----------------");
Log.d(Constants.MAIN_VIEW_ACTIVITY, "Internet não disponível");
Log.d(Constants.MAIN_VIEW_ACTIVITY, "----------------");
DialogsUtil
.showDialogError(MainViewActivity.this, Constants.ERRO, Constants.NO_SUCH_INTERNET_FOUND);
myFiles.select();
}
}
@Override
public void onTabReselected(Tab tab, FragmentTransaction ft) {
}
});
actionBar.addTab(downloads, 1);