質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Kotlin

Kotlinは、ジェットブレインズ社のアンドリー・ブレスラフ、ドミトリー・ジェメロフが開発した、 静的型付けのオブジェクト指向プログラミング言語です。

Q&A

解決済

1回答

616閲覧

【kotlin】SharedPreferencesのデータが保存できない

kotlinLikeSongs

総合スコア11

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Kotlin

Kotlinは、ジェットブレインズ社のアンドリー・ブレスラフ、ドミトリー・ジェメロフが開発した、 静的型付けのオブジェクト指向プログラミング言語です。

0グッド

0クリップ

投稿2022/08/06 14:16

編集2022/08/06 23:45

現在kotlinを学習しているのですが、Android StudioでSharedPreferencesというものを使って
データをXMLファイルに保存しようと思ったところ何度やっても

data/data/[パッケージ名]/shared_prefs

にXMLが生成されません。
下記のコードでどの部分が間違っているのかご教授いただきたいのですが…。

なお、エミュレーターで実行してもエラーなどは一切吐き出されません。

該当のソースコード

kotlin

1package preasents.test.main 2 3import android.content.Context 4import androidx.appcompat.app.AppCompatActivity 5import android.os.Bundle 6import android.widget.Button 7import android.widget.TextView 8import android.widget.Toast 9import preasents.test.R 10 11class MainActivity : AppCompatActivity() { 12 override fun onCreate(savedInstanceState: Bundle?) { 13 super.onCreate(savedInstanceState) 14 setContentView(R.layout.activity_main) 15 16 val prefs = getSharedPreferences("preference_test", Context.MODE_PRIVATE) 17 18 var txt: TextView = findViewById(R.id.tv) 19 var btn: Button = findViewById(R.id.btn1) 20 var cl: Button = findViewById(R.id.btn2) 21 22 btn.setOnClickListener { 23 var tmp = prefs.getString("test", "無") 24 txt.text = tmp 25 26 var tmp_txt = txt.text.toString() 27 var editor = prefs.edit() 28 editor.putString("test", tmp_txt) 29 editor.apply() 30 } 31 32 cl.setOnClickListener { 33 txt.text = "TextView" 34 var toastTxt = prefs.getString("test", "保存されていません") 35 Toast.makeText(this, toastTxt, Toast.LENGTH_SHORT).show() 36 } 37 } 38}

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hoshi-takanori

2022/08/06 16:33

保存時のキーが "Test_Key" なのに、取得時は "test" だからでは…。
kotlinLikeSongs

2022/08/06 23:44

ご回答ありがとうございます。コードの誤りを修正させていただきました。 ただ今回の質問に関して”XML自体が生成されない”ので、保存時と呼び出し時のキーの違いは関係ないと思って気にしてませんでした。 修正して再度試してみましたが、やはりXML自体が生成されないのでいまだに悩んでいます…
guest

回答1

0

自己解決

お騒がせしてすみません!Android Studio自体を再起動かけてみたところXMLが生成されていました!

投稿2022/08/06 23:50

kotlinLikeSongs

総合スコア11

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問