在Android中,要自定義AlertDialog的樣式,您需要創建一個新的XML樣式文件并將其應用于AlertDialog。以下是如何創建和應用自定義樣式的步驟:
在res/values
目錄下創建一個名為styles.xml
的新文件(如果尚未存在)。
在styles.xml
文件中,創建一個新的樣式并繼承自Theme.AppCompat.Light.Dialog.Alert
或其他適當的AlertDialog主題。例如:
<style name="CustomAlertDialogStyle" parent="Theme.AppCompat.Light.Dialog.Alert">
<!-- 自定義屬性 -->
</style>
</resources>
<item name="android:background">#FFF</item>
<item name="buttonBarPositiveButtonStyle">@style/PositiveButtonStyle</item>
<item name="buttonBarNegativeButtonStyle">@style/NegativeButtonStyle</item>
<item name="buttonBarNeutralButtonStyle">@style/NeutralButtonStyle</item>
<item name="android:background">#4CAF50</item>
<item name="android:textColor">#FFFFFF</item>
</style><style name="NegativeButtonStyle" parent="Widget.AppCompat.Button.ButtonBar.AlertDialog">
<item name="android:background">#F44336</item>
<item name="android:textColor">#FFFFFF</item>
</style><style name="NeutralButtonStyle" parent="Widget.AppCompat.Button.ButtonBar.AlertDialog">
<item name="android:background">#2196F3</item>
<item name="android:textColor">#FFFFFF</item>
</style>
AlertDialog.Builder builder = new AlertDialog.Builder(new ContextThemeWrapper(this, R.style.CustomAlertDialogStyle));
builder.setTitle("Title")
.setMessage("Message")
.setPositiveButton("OK", null)
.setNegativeButton("Cancel", null)
.show();
在Kotlin中:
val builder = AlertDialog.Builder(ContextThemeWrapper(this, R.style.CustomAlertDialogStyle))
builder.setTitle("Title")
.setMessage("Message")
.setPositiveButton("OK", null)
.setNegativeButton("Cancel", null)
.show()
現在,您的AlertDialog將使用自定義樣式。您可以根據需要進一步自定義樣式屬性。