はじめてのAndroid開発

先日インターンシップに参加し、KotlinでAndroidアプリ開発をしてきた。

感想とメモが入り混じった記事ではあるが、インターンで学んだことと、これからの課題をメモとして残しておく。

スコープ関数

こいつは便利だ。まだまだ使いこなせてない感があるので、勉強して使えるようになりたい。

  • apply

これはshared preferencesに書き込む部分のコード。全部にmSharedPreferences.edit().putString(...)と書くのを省略できる。

mSharedPreferences.edit().apply {
    putString("name", mNameText.text.toString()).apply()
    putString("github", mGitText.text.toString()).apply()
    putString("twitter", mTwitterText.text.toString()).apply()
}
  • let

nullableの変数を扱う時に?をつけることがある。しかしこれを何回も使おうとすると、全部に?をつけなくてはならない。letを使うことで解決できた。

  • その他

スコープ関数は5つある。スコープ関数と調べるといっぱい出てくるので、使いこなせるようになりたい。

静的オブジェクト

C++Javaでは静的な変数や関数にstaticをつけるが、Kotlinはcompanion objectを使う。

layoutファイルのデバッグ

recycler viewが動かなくて苦戦していたら、原因はitemのレイアウトファイルのサイズ設定が間違えていた。優しいメンターさんがついてたし、調べてうまく行かなかったら質問しようね...。自分がQtで開発しているときもやっていたことだが、ロジックを何度見ても動かなかったらlayotを疑おう。attributeにbackgroundがあると思う。そこに色をつければ、もっと早く原因の切り分けができたかもしれない。テキスト表示が崩れた時とかも有効かも。