共有設定に問題があり、機能していません。
私は非常に長い間これに苦労してきましたが、なぜこれがうまくいかないのかとてもイライラしています.
Load メソッドを Oncreate と Onresume メソッドに入れようとしましたが、どれも機能しませんでした。
保存したい:
ブール値 = stopValue、これはアプリを初めて使用するときは false である必要があり、将来的には最後に保存されたものからロードする必要があります。別のクラスでボタンを使用するとブール値が変わるため、getIntent().getBooleanExtra(); があります。
日付と呼ばれる文字列。
Int、startkm。
これらは保存されるデータです。
御時間ありがとうございます。
しかし、これが私の Main クラスのコードです。
public class Main extends Activity{
Button bStart, bStop;
TextView tvView;
Spinner spinner1;
boolean stopValue;
int startkilometer;
String date;
SharedPreferences prefs;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
bStart = (Button) findViewById(R.id.bStart);
tvView = (TextView) findViewById(R.id.tvView);
spinner1 = (Spinner) findViewById(R.id.spinner1);
date = getIntent().getStringExtra("datoen");
startkilometer = getIntent().getIntExtra("startkm", startkilometer);
stopValue = getIntent().getBooleanExtra("stopper", stopValue);
if(stopValue == false){
bStart.setText("Start");
bStart.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent start = new Intent("com.uniqueapps.runner.START");
startActivity(start);
}
});
}
if(stopValue){
bStart.setText("Stop");
bStart.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent stop = new Intent("com.uniqueapps.runner.STOP");
stop.putExtra("startkm", startkilometer);
stop.putExtra("datoen", date);
startActivity(stop);
}
});
}
KilometerSQL info = new KilometerSQL(this);
info.open();
String data = info.getData();
info.close();
tvView.setText(data);
}
@Override
protected void onResume() {
// TODO Auto-generated method stub
super.onResume();
prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
prefs.getBoolean("stopper", false);
prefs.getInt("startkm", startkilometer);
prefs.getString("datoen", date);
}
@Override
protected void onPause() {
// TODO Auto-generated method stub
Editor edit = prefs.edit();
edit.putBoolean("stopper", stopValue);
edit.putInt("startkm", startkilometer);
edit.putString("datoen", date);
edit.commit();
super.onPause();
}