必须点击两次打电话给一个onclick
我试图创建一个介绍活动在用户点击后,只出现一次跳跃按钮,跳过按钮允许用户去mainactivity 我的问题我已经是当我点击跳过按钮时,没有得到任何东西,直到我按两次或三次,之后,跳过按钮效果不错,我真的不知道Onclick方法不起作用的原因 这个我的代码:必须点击两次打电话给一个onclick
public class intro extends Activity {
Button skip;
SharedPreferences appPreferences;
boolean isclick = false;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.activity_intro);
skip = (Button)findViewById(R.id.skip);
hide();
appPreferences = PreferenceManager.getDefaultSharedPreferences(this);
isclick= appPreferences.getBoolean("isclick",false);
if(isclick){
Intent toMain = new Intent(this,MainActivity.class);
startActivity(toMain);
}
skip.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(!isclick){
Intent toMain = new Intent(intro.this,MainActivity.class);
startActivity(toMain);
finish();
SharedPreferences.Editor editor = appPreferences.edit();
editor.putBoolean("isclick", true);
editor.apply();
}
}
});
}
您的isClick逻辑对我来说没有意义。而不是总是运行这个介绍,但是如果isclick是真的,那么立即开始主要活动,为什么不具备是否在mainactivity中执行介绍的逻辑。像这样的事情在mainactivity:
protected void onCreate(Bundle savedInstanceState) {
SharedPreferences appPreferences = PreferenceManager.getDefaultSharedPreferences(this);
if (!appPreferences.getBoolean("introSkipped", false)) {
Intent toIntro = new Intent(this,Intro.class);
startActivity(toIntro);
} else {
// continue with main as normal
}
}
然后,你的跳过按钮的onClick简直变成:
skip.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
SharedPreferences.Editor editor = appPreferences.edit();
editor.putBoolean("introSkipped", true);
editor.apply();
finish();
}
});
主要性应该是发射器的活动吗? –
是的 - 所以你可能需要改变你的清单。它看起来在你的代码中有一个MainActivity.class,所以我认为这对你来说 –
非常感谢它的工作正常,但并不顺利一个android api 21当我点击按钮后,我应该等待2秒钟后mainactivity来了,我知道这是一个奇怪的问题 –
只需添加'Log.e( “点击”, “点击”)在''你onClickListener()'之前如果条件和检查天气的事件是否工作 –
我建议你在你的条件之前添加日志,并检查天气你得到正确的日志 –
如果你的跳过是文本视图,那么面积是小的这将是问题。根据以上评论首先添加日志,然后分析。 – Mayuri