Пользовательская ссылка DialogPreference не показывает ImageView должным образом - PullRequest
0 голосов
/ 08 июня 2018

У меня есть пользовательская DialogPreference:

    <com.myapp.MyPreferenceDialog
        android:key="dialog_key"
        android:title="Test MyDialogPreference"
        android:positiveButtonText="ok"
        android:negativeButtonText="cancel"
        />

Код диалога следующий:

class MyDialogPreference extends DialogPreference
{

    public MyDialogPreference( Context context, AttributeSet attrs )
    {
        super(context, attrs);
        setDialogLayoutResource( R.layout.test );
    }
}

XML-код макета выглядит следующим образом:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <ImageView
        android:id="@+id/imageView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:srcCompat="@drawable/image" />
</LinearLayout>

Когда я запускаю настройки приложения и нажимаю «Проверить MyDialogPreference», отображается диалоговое окно, но в окне просмотра изображений не отображается ни одно изображение.Я знаю, как это исправить программно (просто переопределите onBindDialogView() и установите ресурс изображения ImageView на его рисование), но я хотел бы понять, почему я должен делать это программно.

1 Ответ

0 голосов
/ 08 июня 2018

добавить следующее в ваш файл build.gradle

defaultConfig {  
 vectorDrawables.useSupportLibrary = true  
}  
...