2018-03-01 到達点メモ
*Kotlinで開発しています
FragmentClassでcontextを使いたい場合は
*今回の場合はDialogFragment
activity.applicationContext
と宣言すればよい。
api23からならcontextを呼び出せるのだが
それ以前は不可なのでわざわざバージョン別けするぐらいなら
上記のように呼び出した方が明らかに楽である
参考サイト
Android フラグメントでcontextを使用する
ダイアログにデータを渡したい場合
◆渡す方
val dialog = SelectTimeDialogFragment()
val testString = "AAA"
val args = Bundle()
args.putString("testString", testString)
dialog.arguments = args
dialog.show(fragmentManager,"testString")
◆受け取る方
appPackgeName = arguments.getString("testString")
参考サイト
Android DialogFragmentで引数を扱う
今回自作クラスをつくったので
クラス作成時に引数を取りたかったので
調べたところ以下のようにすればよかったらしい
class UserInfoSaveAndLoad(appContext: Context) {
val applicationContext = appContext
val prefs = PreferenceManager.getDefaultSharedPreferences(applicationContext)
val gson = Gson()
val userInfoString:String? = prefs.getString("TEST", null)
//以下略
別にわざわざinitを宣言しなくても
代入くらいなら普通に上記のようにコンストラクタとして書けるようである
参考サイト:Kotlinでコンストラクタを書く
データの読み書き用の自作クラスを作ったので
割と時間がかかったがとりあえず時間の保存・読み込みができるようにはなった。
使っていてTimePickerが内部の処理的にも、使い勝手的にもめんどくさいので
結局、ライブラリに回帰するかもしれない。
最低限の目標は達成したので今日はここまで。
0 コメント:
コメントを投稿