我希望此代码在安装应用程序后仅运行一次。 页面1上有一个按钮,单击该按钮后,用户将被带到页面2。 页面2是免责声明页面,在标记了复选框并单击“同意”按钮之后,将用户定向到主页。 当用户第二次单击时,此免责声明页面不应再次打开。 我尝试为此修改代码,但是由于按钮不明,因此无法使用。
第1页
import android.content.Intent;
import android.content.SharedPreferences;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class MainActivity extends AppCompatActivity {
public Button btn_Shap;
public void first(){
btn_Shap = (Button)findViewById(R.id.btn_Shap);
btn_Shap.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent btn = new Intent(MainActivity.this, disclaimer.class);
startActivity(btn);
}
});
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
first();
}
}
第2页
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class disclaimer extends AppCompatActivity {
public Button button2;
public Button button1;
public void second(){
button2 = (Button)findViewById(R.id.button2);
button2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent btn = new Intent(disclaimer.this, home.class);
startActivity(btn);
}
});
}
public void first(){
button1 = (Button)findViewById(R.id.button1);
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent btn = new Intent(disclaimer.this, MainActivity.class);
startActivity(btn);
}
});
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_disclaimer);
second();
first();
}
}
答案 0 :(得分:0)
在“ desclaimer”页面内部,使用共享首选项存储一个布尔值,并在打开“ desclaimer”页面之前对其进行检查。像这样
在“声明”页面内
SharedPreferences settings = getSharedPreferences("prefs", 0);
SharedPreferences.Editor editor = settings.edit();
editor.putBoolean("firstRun", false);
editor.commit();
在打开免责声明页面之前
SharedPreferences settings = getSharedPreferences("prefs", 0);
boolean firstRun = settings.getBoolean("firstRun", true);
if ( firstRun )
{
//Open desclaimer
}else{
//Do not open desclaimer
}