環境メモ
⭐️macOS Monterey
⭐️Android Studio Chipmunk 2021.2.1 Patch 2
themesで色を設定する
buttonBarPositiveButtonStyle
はPositiveButtonの文字色を設定する。
buttonBarNegativeButtonStyle
はNegativeButtonの文字色を設定する。
android:textColor
はタイトルの文字色を設定する。
android:textColorPrimar
はメッセージの文字色を設定する。
android:background
はダイアログの背景色を設定する。
themes.xml
<style name="CustomAlertDialog" parent="ThemeOverlay.AppCompat.Dialog.Alert">
<item name="buttonBarPositiveButtonStyle">@style/alertDialogPositiveStyle</item>
<item name="buttonBarNegativeButtonStyle">@style/alertDialogNegativeStyle</item>
<item name="android:textColor">@color/green</item>
<item name="android:textColorPrimary">@color/purple</item>
<item name="android:background">@color/lightcyan</item>
</style>
<style name="alertDialogPositiveStyle" parent="Widget.AppCompat.Button.ButtonBar.AlertDialog">
<item name="android:textColor">@color/pink</item>
</style>
<style name="alertDialogNegativeStyle" parent="Widget.AppCompat.Button.ButtonBar.AlertDialog">
<item name="android:textColor">@color/orange</item>
</style>
colors.xml
<color name="pink">#ff1493</color>
<color name="orange">#ff8c00</color>
<color name="red">#ff0000</color>
<color name="green">#006400</color>
<color name="purple">#800080</color>
<color name="lightcyan">#e0ffff</color>
MainActivity.kt
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val button = findViewById<Button>(R.id.button1)
button.setOnClickListener{
AlertDialog.Builder(this, R.style.CustomAlertDialog)
.setTitle("タイトルなのだ")
.setMessage("メッセージですですXXXXXXXXXXX")
.setPositiveButton("OK"){ _, _ -> }
.setNegativeButton("キャンセル"){ _, _ -> }
.show()
}
}
}
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.498"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.19" />
</androidx.constraintlayout.widget.ConstraintLayout>