I need help on going to next XML page if preferences result is null.
I have created two Java class which is activity_main and saving.
I do saving preferences in saving.java and retrieve the preferences is activity_main.
My activity_main doesn't have any preferences so it should prompt me to saving.java to save a preferences but when I tried to run the program, it didn't prompt me to saving.java and I find it weird.
Hope you guys could help me out with it, thanks
This is my activity_main code:
public class ActivityMain extends Activity {
String tag = "Demo";
Spinner greetingSpinner = null;
protected ArrayAdapter<CharSequence> irAdapter;
EditText nameEdit;
int request_Code = 1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
public void onResume() {
super.onResume();
retrievePreferences();
Log.d(tag, "In the onResume() event");
}
public void retrievePreferences() {
SharedPreferences prefs = getSharedPreferences("preferences",
MODE_PRIVATE);
if (prefs.contains(null)) {
Intent intent = new Intent("edu.nyp.activities.UserParticulars");
startActivity(intent);
} else {
if (prefs.contains("greeting")) {
String greetingString = prefs.getString("greeting", "");
int iposition = irAdapter.getPosition(greetingString);
greetingSpinner.setSelection(iposition);
}
if (prefs.contains("name")) {
String nameString = prefs.getString("name", "");
nameEdit.setText(nameString);
}
}
}
}
This is my Saving.java code:
public class Saving extends Activity {
String tag = "Demo";
Spinner greetingSpinner = null;
protected ArrayAdapter<CharSequence> irAdapter;
EditText nameEdit;
int request_Code = 1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button saveBtn = (Button) findViewById(R.id.btn_Save);
greetingSpinner = (Spinner) findViewById(R.id.spin_Greeting);
this.irAdapter = ArrayAdapter.createFromResource(this,
R.array.arrayGreeting, android.R.layout.simple_spinner_item);
greetingSpinner.setAdapter(this.irAdapter);
nameEdit = (EditText) findViewById(R.id.edit_Name);
saveBtn.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Intent intent = new Intent("android.intent.action.MAIN");
Bundle extras = new Bundle();
extras.putString("name", nameEdit.getText().toString());
extras.putString("interestrate", greetingSpinner
.getSelectedItem().toString());
intent.putExtras(extras);
startActivityForResult(intent, request_Code);
}
});
}
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == request_Code) {
if (resultCode == RESULT_OK) {
saveAsPreferences();
}
}
}
public void onPause() {
super.onPause();
saveAsPreferences();
Log.d(tag, "In the onPause() event");
}
public void saveAsPreferences() {
String nameString = nameEdit.getText().toString();
String greetingString = greetingSpinner.getSelectedItem().toString();
SharedPreferences prefs = getSharedPreferences("preferences",
MODE_PRIVATE);
SharedPreferences.Editor editor = prefs.edit();
editor.putString("greeting", greetingString);
editor.putString("name", nameString);
editor.commit();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
No comments:
Post a Comment