●SharedPreferences
- 데이터를 간단하게 저장할 수 있는 안드로이드에서 제공하는 클래스이다.
●예제
- MainActivity.java
package com.example.example; import android.app.Activity; 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; import android.widget.Toast; public class MainActivity extends Activity implements OnClickListener{ EditText et_id, et_pw; CheckBox chk_auto; Button btn_login; SharedPreferences setting; SharedPreferences.Editor editor; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main);
et_id = (EditText) findViewById(R.id.et_id); et_pw = (EditText) findViewById(R.id.et_pw); chk_auto = (CheckBox) findViewById(R.id.chk_auto); btn_login = (Button) findViewById(R.id.btn_login); setting = getSharedPreferences("setting", 0); editor= setting.edit();
if(setting.getBoolean("chk_auto", false)){ et_id.setText(setting.getString("ID", "")); et_pw.setText(setting.getString("PW", "")); chk_auto.setChecked(true); }
btn_login.setOnClickListener(this); } @Override public void onClick(View v) { if(chk_auto.isChecked()){ Toast.makeText(this, "로그인", Toast.LENGTH_SHORT).show(); String ID = et_id.getText().toString(); String PW = et_pw.getText().toString();
editor.putString("ID", ID); editor.putString("PW", PW); editor.putBoolean("chk_auto", true); editor.commit(); }else{ editor.clear(); editor.commit(); } } }
|
- activity_main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity2" > <TextView android:id="@+id/txt_id" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" android:layout_marginTop="30dp" android:text="ID를 입력하세요" /> <EditText android:id="@+id/et_id" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/txt_id" android:layout_centerHorizontal="true" android:ems="10" /> <TextView android:id="@+id/txt_pw" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/et_id" android:layout_marginTop="30dp" android:layout_centerHorizontal="true" android:text="비밀번호를 입력하세요" /> <EditText android:id="@+id/et_pw" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/txt_pw" android:layout_centerHorizontal="true" android:ems="10" > <requestFocus /> </EditText> <CheckBox android:id="@+id/chk_auto" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/et_pw" android:layout_centerHorizontal="true" android:layout_marginTop="30dp" android:text="자동 로그인" />
<Button android:id="@+id/btn_login" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/chk_auto" android:layout_centerHorizontal="true" android:layout_marginTop="30dp" android:text="자동 로그인" /> </RelativeLayout>
|
'프로그래밍 > 안드로이드' 카테고리의 다른 글
#0.안드로이드 공부 다시시작 (0) | 2023.01.02 |
---|---|
안드로이드 GCM (0) | 2015.05.10 |
안드로이드 자바 소켓서버 통신 (0) | 2015.05.10 |
안드로이드 어싱크태스크(AsyncTask),로딩중 표시(ProgressDialog), 웹서버 연결 통신(HttpURLConnection) (0) | 2015.05.01 |
안드로이드 JSONObject, JSONArray (0) | 2015.04.26 |
댓글