我正在使用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启动时,进度条不显示。 但是一旦加载了Activity
并且用户正在交换Fragment
,使用相同的setSupportProgressBarIndeterminateVisibility(true);
进度条微调器就会完美显示。
我正在使用最新的Sherlock
导入所有正确的Sherlock
库(我认为是 4.04? 谁能说出出了什么问题?
在oncreate中调用super方法之前添加此行
requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
然后在关闭 onCreate 方法而不是 onPreExecute 之前添加此行
setSupportProgressBarIndeterminateVisibility(true);