1

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);
4

0 に答える 0