需求:
1.不勾选“不再提示”点击“同意”进入首页面,下次打开程序依然显示免责声明页
2.点击“不同意”退出程序
3.勾选“不再提示”点击“同意” 进入首页面,下次打开程序时直接进入首页面
选择使用SharedPreferences实现~
首先先说一下SharedPreferences:
1.SharedPreferences是使用键值对的方式来存储数据的,也就是在保存一条数据时,需要给这条数据提供一个对应的键,这样在读取的时候就可以通过这个键把相应的值取出来。
2.获得SharedPreferences对象:getSharedPreferences(String name ,ine mode)
此方法接收两个参数,第一个参数用于指定SharedPreference文件的名称,即存储XML文件的名称,如果存在,则会直接引用,如果指定的文件不存在则会创建一个,SharedPreferences文件都是存放在/data/data/<包名>/shared_prefs/存储的XML文件目录下,第二个参数表示文件的存储模式(该方式创建的XML文件可以被同一个软件的Activity引用)。
3.得到SharedPreferences对象之后,就可以开始向SharedPreferences文件中存储数据了
主要有三步:
a.使用SharedPreferences对象的edit()
方法来获取一个SharedPreferences.Editor
对象
b.向SharedPreferences.Editor
对象中添加数据,比如添加一个布尔型数据就是用putBoolean()
方法,添加一个字符串就是用putString()
方法,以此类推
c.调用commit()
方法将添加的数据提交,从而完成数据存储操作
好的,现在来实现免责声明页:
TNCGuideActivity:
//创建sharedprederence实例对象,将生成一个xml文件 名字是DATA,模式是MODE_PRIVATE
sharedPreferences = getSharedPreferences(DATA, MODE_PRIVATE);
int data = sharedPreferences.getInt(CONTENT, 1);
if (data == REMINDER_NO) {
Intent intent = new Intent(TNCGuideActivty.this,MainActivity.class);
startActivity(intent);
finish();
}else initViews();
点击同意的时候:
View.OnClickListener onButtonClickedListener = new View.OnClickListener() {
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.statement_text_yes:
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putInt(CONTENT, nIsReminder);
editor.commit();
Intent intent = new Intent(TNCGuideActivty.this,MainActivity.class);
startActivity(intent);
finish();
case R.id.statement_text_no:
finish();
default:
break;
}
}
};
以上~
Demo的下载地址为:https://download.csdn.net/download/vida990717/11044688