ActionBar setProgressBarIndeterminateVisibility(false)无法在android 2.3上运行

时间:2013-04-02 13:35:38

标签: android actionbarsherlock android-progressbar

setProgressBarIndeterminateVisibility(false)不适用于2.3 android。 我正在使用下面的代码。进度条始终显示,不会隐藏。 相同的代码正在android 4.x上工作,进度条被隐藏。活动是 从SherlockFragmentActivity扩展,没有像setSupportProgressBarIndeterminateVisibility(true)这样的调用;这将使进度条可见。 我的完整代码:

@Override
protected void onCreate(Bundle savedInstanceState) {
    ((SherlockFragmentActivity) JbActivity.this)
            .requestWindowFeature((long) com.actionbarsherlock.view.Window.FEATURE_INDETERMINATE_PROGRESS);
    super.onCreate(savedInstanceState);

    setSupportProgressBarIndeterminateVisibility(false);
    DisplayMetrics metrics = new DisplayMetrics();
    getWindowManager().getDefaultDisplay().getMetrics(metrics);
    restart = false;
    actionBar = getSupportActionBar();
    if (SelectedItems.isNull()) {
        restart = true;
        try {
            String jsonString = savedInstanceState
                    .getString("SelectedItems");
            SelectedItems.build(jsonString);
        } catch (Exception e) {
            Intent mainIntent = new Intent(JbActivity.this,CityList.class);
            mainIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
            startActivity(mainIntent);
            finish();
        }
    }

}

我打电话的代码中没有地方 你可以建议一种方法,这样我就可以隐藏android 2.x上的进度条。感谢

3 个答案:

答案 0 :(得分:14)

尝试使用: getSherlockActivity().setSupportProgressBarIndeterminateVisibility(false);

如果您是从SherlockFragment或只是:

调用它
setSupportProgressBarIndeterminateVisibility(false);

答案 1 :(得分:1)

尝试使用此方法显示:

setSupportProgressBarIndeterminateVisibility(true); 

和隐藏的方法:

setSupportProgressBarIndeterminateVisibility(false); 

两者都适用于android 2.3.3到4.1.7

答案 2 :(得分:0)

致电

setSupportProgressBarIndeterminateVisibility(false);
在 setContentView

之后