Добавить собственный стиль в Android Dialog - PullRequest
0 голосов
/ 24 декабря 2018

Я создал свой собственный класс Dialog в kotlin.Все работает отлично, но сейчас я пытаюсь добавить свой собственный стиль.Вот код моего стиля

 <style name="DialogTheme" parent="Theme.AppCompat.Light.Dialog">

    <item name="android:layout_width">fill_parent</item>
    <item name="android:layout_height">fill_parent</item>
    <item name="android:windowBackground">@color/transparent_15</item>
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowIsFloating">false</item>

    <item name="android:windowContentOverlay">@null</item>
    <item name="android:backgroundDimEnabled">true</item>

    <item name="colorPrimary">@color/black</item>
    <item name="colorPrimaryDark">@color/black</item>
    <item name="colorAccent">@color/light_blue</item>

</style>

и мой код моего котлина

class LoadingProgress(context: Context) : Dialog(context) {

    private var imageView: ImageView? = null
    private var message: TextView? = null

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setCancelable(false)
        setCanceledOnTouchOutside(false)
        setContentView(R.layout.sp_loading_dialog)
        imageView = findViewById<View>(R.id.loading_image_view) as ImageView?
        message = findViewById<View>(R.id.loading_message) as TextView?

    }

    override fun show() {
        super.show()
        (imageView!!.background as AnimationDrawable).start()

    }
}

В Java я знаю, как добавить собственный стиль, но я не могу переписать код Javaв котлин.

Вот мой код java'snippet:

public LoadingProgress(@NonNull Context context) {
    super(context, R.style.DialogTheme);
}

Как я могу решить эту проблему?спасибо

1 Ответ

0 голосов
/ 24 декабря 2018

Попробуйте изменить вызывающий конструктор Dialog:

class LoadingProgress(context: Context) : Dialog(context, R.style.DialogTheme) { ... }
...