自己有个思路,在fragment的oncreateview的时候,把activity的动画给关闭。不知道谁还有更好的思路,,,

解决方案 »

  1.   

    没碰到类似情况, 如果业务卡的话, 异步处理就可以 ,不至于对UI线程造成堵塞。
    会不会你在fragment 初始化时候执行了大量的运算?如果有代码, 就可以分析分析。
      

  2.   

    @Override
    public void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    instance=MainActivity.this;
    mControlCenter = FragmentControlCenter.getInstance(this);
    mApplication=(EasyEditClientApplication) this.getApplication();
    initViews(); initData();
    } private void initViews() { setContentView(R.layout.main_slidemenu_layout);

    initActionBar();
    mRightIcon=(TextView) findViewById(R.id.iv_right_icon);
    initSlideMenu(); } private void initSlideMenu() {
    FragmentModel fragmentModel = mControlCenter.getHomeFragmentModel();
    switchHomeContent(fragmentModel);
    SlidingMenu sm = getSlidingMenu();
    sm.setMode(SlidingMenu.LEFT_RIGHT);
    setBehindContentView(R.layout.left_menu_frame);
    sm.setSlidingEnabled(true);
    sm.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);
    sm.setShadowWidthRes(R.dimen.shadow_width);
    sm.setShadowDrawable(R.drawable.shadow);
    getSupportActionBar().setDisplayHomeAsUpEnabled(true);
    getSupportFragmentManager().beginTransaction()
    .replace(R.id.left_menu_frame, new MenuFragment()).commit();
    sm.setBehindOffsetRes(R.dimen.slidingmenu_offset);
    sm.setBehindScrollScale(0);
    sm.setFadeDegree(0.25f);
    sm.setSecondaryMenu(R.layout.right_menu_frame);
    sm.setSecondaryShadowDrawable(R.drawable.shadow);
    getSupportFragmentManager().beginTransaction()
    .replace(R.id.right_menu_frame, new SettingFragment()).commit();
    } private void initActionBar() {
    ActionBar actionBar = getSupportActionBar();
    actionBar.setCustomView(R.layout.actionbar_layout);
    actionBar.setDisplayShowCustomEnabled(true);
    actionBar.setDisplayShowHomeEnabled(false);
    mLeftIcon = (ImageView) findViewById(R.id.iv_left_icon);
    mRightIcon = (TextView) findViewById(R.id.iv_right_icon);
    mLeftIcon.setOnClickListener(this);
    mRightIcon.setOnClickListener(this);
    mTitleTextView = (TextView) findViewById(R.id.tv_title);
    } private void initData() { } public void switchContent(final FragmentModel fragment) {
    mTitle = fragment.mTitle;
    mContent = fragment.mFragment;
    mRightIcon.setVisibility(8);
    getSupportFragmentManager().beginTransaction()
    .replace(R.id.content_frame, mContent).commit();
    Handler h = new Handler();
    h.postDelayed(new Runnable() {
    public void run() {
    getSlidingMenu().showContent();
    }
    }, 50); mTitleTextView.setText(mTitle);
    } public void switchHomeContent(final FragmentModel fragment) {
    mTitle = fragment.mTitle;
    mContent = fragment.mFragment;
    mRightIcon.setText("分类");
    mRightIcon.setVisibility(0);
    getSupportFragmentManager().beginTransaction()
    .replace(R.id.content_frame, mContent).commit();
    Handler h = new Handler();
    h.postDelayed(new Runnable() {
    public void run() {
    getSlidingMenu().showContent();
    }
    }, 50); mTitleTextView.setText(mTitle);
    }

    public void switchDownContent(final FragmentModel fragment) {
    mTitle = fragment.mTitle;
    mContent = fragment.mFragment;
    mRightIcon.setText("编辑");
    mRightIcon.setVisibility(0);
    getSupportFragmentManager().beginTransaction()
    .replace(R.id.content_frame, mContent).commit();
    Handler h = new Handler();
    h.postDelayed(new Runnable() {
    public void run() {
    getSlidingMenu().showContent();
    }
    }, 50); mTitleTextView.setText(mTitle);
    }
      

  3.   

    初步估计 
    你这个仿qq的
    左边是菜单fragment,右边是设置 fragment1 先关闭这两个的fragment的 replace操作。 看看效果。
    2 将这两个fragment 的构建推迟到 主界面生成后执行。
      

  4.   

    我这两天更新了最新的SDK和eclipse,然后调试的时候就特别卡,打个release的包就没问题~
      

  5.   

    第二点不是很明白,构架顺序是MAINACTIVITY->左边的fragment->右边的fragmnet,怎么推迟到主界面生成后执行,主界面其实就是右边的fragment
      

  6.   


    额 有界面的截图来一张我的意思如果一个fragment 并没有马上显示的话 可以postDelay类似方法推迟(replace)
    个人想法, 无效勿怪。
      

  7.   


    额 有界面的截图来一张我的意思如果一个fragment 并没有马上显示的话 可以postDelay类似方法推迟(replace)
    个人想法, 无效勿怪。没事,我也不知道是什么原因,多参考下各方意见