判断 SharedPreferences 是否是第一次登录

                                                  判断 SharedPreferences 是否是第一次登录

1.通过这个小dome给大家分享一下代码:

   布局:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/activity_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="test.bwei.com.sharedpreferences.MainActivity">

    <TextView
        android:id="@+id/tv"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="第一次启动" />
RelativeLayout>

Activity类:
public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        // 如果是第一次启动APP,显示textview上的值
        // 如果不是第一次启动,直接跳转到下一个activity
        // 获取SharedPreferences的实例
        SharedPreferences sp = getSharedPreferences("first",MODE_PRIVATE);
        //默认第一次启动,如果里面没有存放数据则返回true
        boolean isFirst = sp.getBoolean("isFirst",true);

        //第一次启动
        if (isFirst){
            ((TextView)findViewById(R.id.tv)).setText("第一次启动");
            //通过实例获取editor
            SharedPreferences.Editor edit = sp.edit();
            //存放值
            edit.putBoolean("isFirst",false);
            //提交
            edit.commit();
        }else{
            //不是第一次启动
            startActivity(new Intent(MainActivity.this,Main2Activity.class));
        }

    }
}
这是跳转的那个类:
public class Main2Activity extends AppCompatActivity {
    ImageView iv;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main2);
        //初始化控件
        iv = (ImageView) findViewById(R.id.iv);
        iv.setImageResource(R.mipmap.ic_launcher);
    }
}
跳转的这个类显示的是一张图片,到这这个小dome就结束了!


你可能感兴趣的:(android基础)