前提・実現したいこと
「はじめてのAndroidプログラミング 第4版」を参考にAndroid Studioでじゃんけんアプリのコードを書いています。
共有プリファレンスを用いて前回の結果を保存しており、
メイン画面のonCreate()でプリファレンス内を初期化したいです。
発生している問題・エラーメッセージ
pref.edit{}内が赤い波線になり、 Too many arguments for public abstract fun edit(): SharedPreferences.Editor! defined in android.content.SharedPreferences と出ています。
該当のソースコード
Kotlin
1class MainActivity : AppCompatActivity() { 2 override fun onCreate(savedInstanceState: Bundle?) { 3 super.onCreate(savedInstanceState) 4 setContentView(R.layout.activity_main) 5 gu.setOnClickListener { onJankenButtonTapped(it) } 6 choki.setOnClickListener { onJankenButtonTapped(it) } 7 pa.setOnClickListener { onJankenButtonTapped(it) } 8 9 val pref = getSharedPreferences(packageName + "_preferences", MODE_PRIVATE) 10 pref.edit { 11 clear() 12 } 13 14 }
試したこと
元のコードでは
val pref = PreferenceManegar.getDefaultSharedPreferences(this)
でしたが、共有プリファレンスが非推奨コードになっているとのことだったので
デベロッパーを参考に下記に書き換えましたが、どちらも同じエラーになりました。
val pref = getSharedPreferences(packageName + "_preferences", MODE_PRIVATE)
補足情報(FW/ツールのバージョンなど)
Android Studio 4.0.1
他不足情報があれば追記します。
ご教授のほどよろしくお願いします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/10/13 22:11
2020/10/14 09:18