我使用以下代码显示了烤面包片。在应用程序的第一次运行时,Crouton出现了。但是,如果我按回按钮并从启动器或最近列表中重新打开应用程序,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中显示crouton似乎没有任何效果。
答案 0 :(得分:1)
通过对显示的烤面包片的引用和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();
}
}
还有其他方法可以解决这个问题。
Crouton.clearCroutonsForActivity(this);
Crouton.cancelAllCroutons();
使用适合您需求的产品。