我正在使用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我认为?)任何人都可以说出错了吗?
答案 0 :(得分:0)
在oncreate中调用super方法之前添加此行
requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
然后在关闭onCreate方法而不是onPreExecute
之前添加此行setSupportProgressBarIndeterminateVisibility(true);