最近在探索存储功能,这个代码留做备份,实现的功能就是,在输入框输入数据,按第一个按钮添加设备会添加数据(名称,地址)到data.xml中,按第二个按钮连接设备会弹出吐司读取data.xml的内容,最后即使退出再进,点击连接设备还是会弹出之前保存的数据,非常简单
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
>
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/edit_text"/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/add_device_button"/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/connect_button"/>
</LinearLayout>
重点关注mSharedPreferencesEditor和mSharedPreferences的操作,阅读时可以按Ctrl键+F观察其位置
public class MainActivity extends AppCompatActivity implements View.OnClickListener{
private EditText editText;
private Button addDeviceButton;
private Button connectButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
initData();
initEvent();
}
private void initView(){
editText= (EditText) findViewById(R.id.edit_text);
addDeviceButton= (Button) findViewById(R.id.add_device_button);
connectButton= (Button) findViewById(R.id.connect_button);
}
private void initData(){
addDeviceButton.setText("添加设备");
connectButton.setText("连接设备");
}
private void initEvent(){
addDeviceButton.setOnClickListener(this);
connectButton.setOnClickListener(this);
}
@Override
public void onClick(View view) {
switch (view.getId()){
case R.id.add_device_button:
SharedPreferences.Editor mSharedPreferencesEditor=getSharedPreferences("data",MODE_PRIVATE).edit();
String string=editText.getText().toString();
mSharedPreferencesEditor.putString("name",string);
mSharedPreferencesEditor.putString("address","10:2E:3C:4D:5A:6R");
mSharedPreferencesEditor.apply();
Toast.makeText(this,"添加设备"+string+"成功",Toast.LENGTH_SHORT).show();
editText.setText("");
break;
case R.id.connect_button:
SharedPreferences mSharedPreferences=getSharedPreferences("data",MODE_PRIVATE);
String nameString=mSharedPreferences.getString("name","");
String addressString=mSharedPreferences.getString("address","");
Toast.makeText(this,"连接到设备:"+nameString+"\n"+addressString,Toast.LENGTH_SHORT).show();
break;
}
}
}