package soo.data.preferencetest;

import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.EditText;

public class PreferenceTest extends Activity {
    /** Called when the activity is first created. */
	
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        Button b = (Button)findViewById(R.id.button01);
        b.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				Intent i = new Intent(PreferenceTest.this,SubActivity.class);
				startActivity(i);
			}
		});
        init();
    }
    
    

	private SharedPreferences sp;
    private EditText et;
    private CheckBox cb1,cb2;
    
    private void init() {
		// TODO Auto-generated method stub
    	sp = getSharedPreferences("sp", Activity.MODE_PRIVATE);//읽고 쓰고가 된다.
    	et = (EditText)findViewById(R.id.editText01);
    	cb1 = (CheckBox)findViewById(R.id.checkBox01);
    	cb2 = (CheckBox)findViewById(R.id.checkBox02);
	}
    
    @Override
    public void onStop(){ //화면 저장 : 화면이 사라질 때 //preference에 저장한다.(shared preference)
    	super.onStop();
    	
    	//1. 화면 상태값들의 저장
    	SharedPreferences.Editor editor = sp.edit(); 
    	
    	String value1=et.getText().toString();
    	boolean value2=cb1.isChecked();
    	boolean value3=cb2.isChecked();
    	
    	editor.putString("et_key", value1);
    	editor.putBoolean("cb1_key", value2);
    	editor.putBoolean("cb2_key", value3);
    	
    	editor.commit();
    }
    
    @Override
    public void onStart(){ //화면정보를 불러와서 셋팅
    	super.onStart();
    	
    	//2. 저장된 값들을 불러오기..
    	String value1 = sp.getString("et_key","");
    	boolean value2 = sp.getBoolean("cb1_key", false);
    	boolean value3 = sp.getBoolean("cb2_key", false);
    	
    	et.setText(value1);
    	cb1.setChecked(value2);
    	cb2.setChecked(value3);
    }
}