活动开始时不显示不确定进度条。但是其他时间吗?

时间:2013-09-10 17:56:58

标签: android android-fragments android-actionbar actionbarsherlock progress-bar

我正在使用ActionBarSherlock。加载启动画面后,我开始下一个Activity,如下所示:

Intent i = new Intent(SplashActivity.this, MainFragmentActivity.class);
startActivity(i);

在我的主FragmentActivity我这样做:

import com.actionbarsherlock.app.ActionBar;
import com.actionbarsherlock.app.SherlockActivity;
import com.actionbarsherlock.view.Window;

public class MainFragmentActivity extends SherlockFragmentActivity {


    @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
            setContentView(R.layout.fragment_layout);


            actionBar = getSupportActionBar();
            actionBar.setDisplayShowCustomEnabled(true);
            actionBar.setDisplayShowTitleEnabled(false);

            // Set up Main Fragment
            FragmentTransaction t2 = this.getSupportFragmentManager()
                    .beginTransaction();
            SherlockListFragment mainFrag = new FollowingFragment();
            t2.replace(R.id.main_frag, mainFrag);
            t2.commit();

                   // lots more edited out
    }

FollowingFragment(在Fragment启动时自动加载的Activity之后,在我的AsyncTask中执行此操作:

@Override
protected void onPreExecute() {
           ((MainFragmentActivity)Context).setSupportProgressBarIndeterminateVisibility(true);
        }

这是问题所在;当Activity FIRST启动时,ProgressBar不会显示。但是,一旦加载Activity并且用户正在交换Fragment,则使用相同的setSupportProgressBarIndeterminateVisibility(true);进度条微调器完美显示。

我正在导入所有正确的Sherlock库,使用最新的Sherlock(4.04我认为?)任何人都可以说出错了吗?

1 个答案:

答案 0 :(得分:0)

在oncreate中调用super方法之前添加此行

requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);

然后在关闭onCreate方法而不是onPreExecute

之前添加此行
setSupportProgressBarIndeterminateVisibility(true);