Android中无限克劳顿的问题只出现一次

Android中无限克劳顿的问题只出现一次,android,crouton,Android,Crouton,我用下面的代码展示了克劳顿。应用程序第一次运行时,将显示Crouton。但如果我点击“后退”按钮并从launcher或最近的列表重新打开应用程序,Crouton将不会出现 公共类MainActivity扩展了ActionBarActivity{ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.lay

我用下面的代码展示了克劳顿。应用程序第一次运行时,将显示Crouton。但如果我点击“后退”按钮并从launcher或最近的列表重新打开应用程序,Crouton将不会出现

公共类MainActivity扩展了ActionBarActivity{

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

}


@Override
protected void onResume() {
    super.onResume();
    Style infinite = new Style.Builder().setBackgroundColorValue(
            Style.holoBlueLight).build();

    Configuration configuration = new Configuration.Builder().setDuration(
            Configuration.DURATION_INFINITE).build();

    Crouton crouton = Crouton.makeText(this, "Hello world", infinite);
    crouton.setConfiguration(configuration);
    crouton.show();
} 
}


在onCreate或onResume中显示面包片似乎没有任何效果。

我通过保持对显示面包片的引用并在onPause中取消面包片,使其按预期工作

public class MainActivity extends Activity {

    private Crouton mCrouton;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_my);
    }

    @Override
    protected void onResume() {
        super.onResume();
        Style infinite = new Style.Builder().setBackgroundColorValue(
                Style.holoBlueLight).build();


        Configuration configuration = new Configuration.Builder().setDuration(
                Configuration.DURATION_INFINITE).build();

        mCrouton = Crouton.makeText(this, "Hello world", infinite);
        mCrouton.setConfiguration(configuration);
        mCrouton.show();
    }

    @Override
    protected void onPause() {
        super.onPause();
        mCrouton.cancel();
    }
}
还有其他方法可以解决这个问题

  • cruton.ClearCrouton实用性(本)
  • cruton.cancelallcruton()
使用适合你需要的东西