Save data to Preference
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Email:"
android:padding="5dip"
/>
<EditText
android:id="@+id/email"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:singleLine="true"
/>
<CheckBox
android:id="@+id/age"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Are You Over 18?"
/>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Message:"
android:padding="5dip"
/>
<EditText
android:id="@+id/message"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:minLines="3"
android:maxLines="3"
/>
<Button
android:id="@+id/submit"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Submit"
/>
</LinearLayout>
package app.test;
import android.app.Activity;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.EditText;
public class Test extends Activity implements View.OnClickListener {
EditText email, message;
CheckBox age;
Button submit;
SharedPreferences formStore;
boolean submitSuccess = false;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
email = (EditText)findViewById(R.id.email);
message = (EditText)findViewById(R.id.message);
age = (CheckBox)findViewById(R.id.age);
submit = (Button)findViewById(R.id.submit);
submit.setOnClickListener(this);
formStore = getPreferences(Activity.MODE_PRIVATE);
}
@Override
public void onResume() {
super.onResume();
email.setText(formStore.getString("email", ""));
message.setText(formStore.getString("message", ""));
age.setChecked(formStore.getBoolean("age", false));
}
@Override
public void onPause() {
super.onPause();
if(submitSuccess) {
formStore.edit().clear().commit();
} else {
SharedPreferences.Editor editor = formStore.edit();
editor.putString("email", email.getText().toString());
editor.putString("message", message.getText().toString());
editor.putBoolean("age", age.isChecked());
editor.commit();
}
}
@Override
public void onClick(View v) {
submitSuccess = true;
finish();
}
}
Related examples in the same category