android studio SharedPreferences이용하여 데이터 저장

 쉐어드를 이용하여 Android앱에서 간단한 데이터를 저장할수 있습니다. 주로 설정 혹은 기타 간단히 안드로이드 앱의 로컬에 저장해야 할때 사용합니다.


공식 자료 : https://developer.android.com/training/data-storage/shared-preferences


사진1) project를 생성합니다.


사진2) xml파일 생성



<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">


<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="36dp"
android:layout_marginTop="70dp"
android:text="이름"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />

<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:text="나이"
app:layout_constraintStart_toStartOf="@+id/textView"
app:layout_constraintTop_toBottomOf="@+id/textView" />

<EditText
android:id="@+id/editAge"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="45dp"
android:ems="10"
android:hint="나이를 입력해 주시기 바랍니다."
android:inputType="text"
app:layout_constraintStart_toStartOf="@+id/editTextName"
app:layout_constraintTop_toTopOf="@+id/editTextName" />

<EditText
android:id="@+id/editTextName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="25dp"
android:ems="10"
android:hint="이름을 입력해 주시기 바랍니다"
android:inputType="text"
app:layout_constraintBottom_toTopOf="@+id/textView"
app:layout_constraintStart_toEndOf="@+id/textView"
app:layout_constraintTop_toTopOf="@+id/textView" />

<Button
android:id="@+id/saveBtn"
android:layout_width="0dp"
android:layout_height="61dp"
android:layout_marginStart="39dp"
android:layout_marginTop="21dp"
android:layout_marginEnd="40dp"
android:text="입력"
app:layout_constraintEnd_toEndOf="@+id/editAge"
app:layout_constraintStart_toStartOf="@+id/textView2"
app:layout_constraintTop_toBottomOf="@+id/editAge" />

<TextView
android:id="@+id/outputTextViewName"
android:layout_width="220dp"
android:layout_height="36dp"
android:layout_marginStart="59dp"
android:layout_marginTop="144dp"
android:layout_marginBottom="145dp"
android:text="TextView"
app:layout_constraintBottom_toBottomOf="@+id/outputBtn"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/saveBtn" />

<TextView
android:id="@+id/outputTextViewAge"
android:layout_width="0dp"
android:layout_height="50dp"
android:layout_marginTop="65dp"
android:layout_marginBottom="66dp"
android:text="TextView"
app:layout_constraintBottom_toBottomOf="@+id/outputBtn"
app:layout_constraintEnd_toEndOf="@+id/outputTextViewName"
app:layout_constraintStart_toStartOf="@+id/outputTextViewName"
app:layout_constraintTop_toTopOf="@+id/outputTextViewName" />

<Button
android:id="@+id/outputBtn"
android:layout_width="0dp"
android:layout_height="51dp"
android:layout_marginStart="12dp"
android:layout_marginEnd="12dp"
android:layout_marginBottom="186dp"
android:text="출력"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="@+id/outputTextViewAge"
app:layout_constraintStart_toStartOf="@+id/outputTextViewAge" />
</androidx.constraintlayout.widget.ConstraintLayout>

코드1) MainActivity xml코드







해당 자세한 코드는 gitHub를 참고해 주시기 바랍니다.


gitHub : https://github.com/Alex-Choi0/android_shared_excercise



댓글

이 블로그의 인기 게시물

Lesson 12_1 프로퍼티 노드(Property Node)

DAQ로 전압 측정하기-2

Lesson 12_2 참조를 이용한 프로퍼티노드(Property Node)