SharedPreferences 存储,这个常用于程序内的一些配置项的存储,使用比 symbian 要简单好多,代码很简单,测试时使用的是 String ,也可以使用其它的试试
具体代码如下:
xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/info"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello" />
<Button
android:id="@+id/btnwrite"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="写入"
/>
<Button
android:id="@+id/btnread"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="读出"
/>
</LinearLayout>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/info"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello" />
<Button
android:id="@+id/btnwrite"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="写入"
/>
<Button
android:id="@+id/btnread"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="读出"
/>
</LinearLayout>
java代码
package zziss.android.prefertest;
import android.app.Activity;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class Prefer_testActivity extends Activity {
/** Called when the activity is first created. */
private TextView info;
private Button btnw;
private Button btnr;
SharedPreferences sp;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
info = (TextView)this.findViewById(R.id.info);
btnw = (Button)this.findViewById(R.id.btnwrite);
btnr = (Button)this.findViewById(R.id.btnread);
sp = this.getPreferences(MODE_PRIVATE);
btnw.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
SharedPreferences.Editor ed = sp.edit();
ed.putString("info", "这是存入的消息");
ed.commit();
}
});
btnr.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
info.setText(sp.getString("info", ""));
}
});
}
}
import android.app.Activity;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class Prefer_testActivity extends Activity {
/** Called when the activity is first created. */
private TextView info;
private Button btnw;
private Button btnr;
SharedPreferences sp;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
info = (TextView)this.findViewById(R.id.info);
btnw = (Button)this.findViewById(R.id.btnwrite);
btnr = (Button)this.findViewById(R.id.btnread);
sp = this.getPreferences(MODE_PRIVATE);
btnw.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
SharedPreferences.Editor ed = sp.edit();
ed.putString("info", "这是存入的消息");
ed.commit();
}
});
btnr.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
info.setText(sp.getString("info", ""));
}
});
}
}
这个保存后的文件可以使用 DDMS 中的 file manager ,打开 data\data ,找到自己的工程,然后找到 shared_prefs 目录 ,就可以找到存储的文件了,是 xml 格式
上面中存的文件内容是
<?xml version='1.0' encoding='utf-8' standalone='yes' ?>
<map>
<string name="info">这是存入的消息</string>
</map>
<map>
<string name="info">这是存入的消息</string>
</map>