メモ > 技術 > IDE: AndroidStudio > アプリの作成(XMLレイアウト / データの保存)
アプリの作成(XMLレイアウト / データの保存)
■SharedPreferencesでデータを保存
以下で新規にプロジェクトを作成
プロジェクトの選択: Empty Activity
プロジェクトの名前: sharedpreferences
ビューバインディングを使えるようにする
build.gradle を変更したら「Sync Now」をクリック
ビューにWebViewを配置する
activity_main.xml を開き、最初から表示されているTextViewを削除し、
「Text」内の「PlainText」をドラッグ&ドロップで中央に配置する
上下左右を画面の端に接続し、マージンは0にする
垂直方向のバイアスは30にしておく
また、以下の設定を行う
id: editText
layout_width: wrap_content
layout_height: wrap_content
text: Text
「Buttons」内の「Button」をドラッグ&ドロップで中央に配置する
上をtextViewの下に接続し、下左右を画面の端に接続し、マージンは0にする
垂直方向のバイアスは20にしておく
また、以下の設定を行う
id: saveButton
layout_width: wrap_content
layout_height: wrap_content
text: 保存
MainActivity を以下のように変更する
package org.refirio.sharedpreferences
import android.content.Context
import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import org.refirio.sharedpreferences.databinding.ActivityMainBinding
class MainActivity : AppCompatActivity() {
private lateinit var binding: ActivityMainBinding
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = ActivityMainBinding.inflate(layoutInflater)
val view = binding.root
setContentView(view)
// SharedPreferencesオブジェクトを取得
val testPref = getSharedPreferences("test", Context.MODE_PRIVATE)
// プリファレンスから、保存されている文字列を取得
val storedText = testPref.getString("edit", "テスト")
binding.editText.setText(storedText)
// ボタンがタップされたときの処理
binding.saveButton.setOnClickListener {
val inputText = binding.editText.text.toString()
testPref.edit().putString("edit", inputText).apply()
}
}
}
Advertisement