Android 不需要的1秒黑色背景显示

Android 不需要的1秒黑色背景显示,android,Android,我有一个活动,其他的都是片段。当我单击btnMain时,我想清除backbackback并显示main活动。我可以清除backbackback并转到MainActivity类,但我的问题是,在转到MainActivity之前,会有1秒(1秒)的黑色背景显示。我怎样才能修好它?下面是我的代码onClick我的btnMain public class MainActivity extends FragmentActivity implements OnClickListener{ @Over

我有一个活动,其他的都是片段。当我单击
btnMain
时,我想清除backbackback并显示
main活动
。我可以清除backbackback并转到
MainActivity
类,但我的问题是,在转到
MainActivity
之前,会有1秒(1秒)的黑色背景显示。我怎样才能修好它?下面是我的代码
onClick
我的
btnMain

public class MainActivity extends FragmentActivity implements OnClickListener{
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_main);
    btnMain = (Button)findViewById(R.id.btnMain);
    btnMain.setOnClickListener(this);

    @Override
    public void onClick(View v) {
    switch (v.getId()) {

    case R.id.btnMain:

    Intent i = new Intent(this,MainActivity.class);
    i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);//for clearing backstack
    overridePendingTransition(0,0);

    default:
        break;
    }
    }
}

似乎活动将从空白背景中播放活动创作动画。建议的解决方法是添加

intent.addFlags(intent.FLAG\u活动\u否\u动画)

代码如下所示

case R.id.btnUnreadNotif:

Intent i = new Intent(this,MainActivity.class);
i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);//for clearing backstack
i.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION); // newly added.
overridePendingTransition(0,0);
break; // Do NOT miss this code :)

default:
    break;

如果代码与以前一样工作,请将行
overridePendingTransition(0,0)setFlag(Intent.FLAG\u ACTIVITY\u CLEAR\u TOP)上的代码>到上面

对我有效的方法是隐藏和显示视图。它们在相同的布局中,具有不同的ID,当单击“主页”按钮时,我只隐藏另一个视图,反之亦然。

您可以将
MainActivity
的代码放在一起吗?输出仍然相同。