#はじめに
アプリ開発で忘れがちなアレコレを書いていきます。
個人的なメモとして残すので順序など適当な所も多いです。
##戻るボタンの簡単な実装
- Buttonを配置してonClickのコールバックでfinish()を実行する。
- AndroidManifest.xmlにandroid:parentActivityName属性を追加
2の記入例
<activity
android:name=".[戻るボタンを追加する対象]"
android:parentActivityName="[App.Name].[親のアクティビティ]">
</activity>
##Viewへのアクセス方法
###findViewbyId
を使ったアクセス
val testTextView = findViewById<EditText>(R.id.testTextView)
testTextView = "Testです"
###Kotlin Android Extension
でアクセス
testButtonView.setOnClickListener {
testTextView.text = "Testです"
}
###ViewBinding
を使ったアクセス 現在の公式推奨方法
1.app/build.gradle
にviewBinding設定を追加してSync
app/build.gradle
android {
.....
buildFeatures {
viewBinding = true
}
....
}
2.アクティビティからのアクセス方法
class MainActivity : AppCompatActivity() {
private lateinit var binding: ActivityMainBinding // 追加
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = ActivityMainBinding.inflate(layoutInflater) // 追加
setContentView(binding.root) // 追加
binding.testTextView.text = "Testです"
}
}
##端末設定に関わらずライトモードを使用する
アンドロイドでは端末設定をダークモードにしている場合、アプリはそれに従ってしまいダークモードのカラーが設定されてしまう。
そうするとダークモード用のレイアウトを用意していないと意図しない配色になる可能性がある。
対策としてthemes.xmlの設定を変えてダークモードに非対応にすると良い。
parentの設定をTheme.MaterialComponents.Lightを継承させる。
res/values/themes.xml
...
<style name="Theme.MyPlot" parent="Theme.MaterialComponents.Light">
...