1.MainActivity.java
public class MainActivity extends AppCompatActivity { SharedPreferences preferences; SharedPreferences.Editor editor; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //获取只能被 本程序读写的sharepreferences对象 preferences = getSharedPreferences("crazyit",MODE_PRIVATE); editor = preferences.edit(); //调用方法edit()来获取editor的对象 Button read = (Button)findViewById(R.id.read); Button wrtie= (Button)findViewById(R.id.write); read.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //读取字符串数据 String time = preferences.getString("time",null); //记取int 整数类型的数据 int randNum = preferences.getInt("random",0); String result = time == null ? "你暂时没有写入时间数据" : "写入时间为:" + time + "上次生成的随机数:" + randNum; Toast.makeText(MainActivity.this,result,Toast.LENGTH_LONG).show(); } }); wrtie.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { /* SimpleDateFormat sdf =new SimpleDateFormat("yyyy 年 MM 月 dd 日" + "hh:mm:ss" );*/ java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("yyyy 年 MM 月 dd 日" + "hh:mm:ss" ); //存入当前的时间 editor.putString("time",sdf.format(new Date())); //存入随机数 editor.putInt("random",(int)(Math.random()*100)); //提交所有存入的数据 editor.commit(); } }); } }
2.xml文件
activity_main.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout android:id="@+id/activity_main" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.sh.appsharepreferences.MainActivity"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Hello World!"/> <Button android:id="@+id/read" android:text="read data" android:layout_width="wrap_content" android:layout_height="wrap_content"/> <Button android:id="@+id/write" android:text="write data" android:layout_width="wrap_content" android:layout_height="wrap_content"/> </LinearLayout>