imageView未显示在alertDialog中

时间:2017-03-24 16:23:25

标签: android imageview alertdialog

我有一个弹出窗口,我通过自定义xml填充。我想要一个图标,在图标旁边,我想要一个开关。 自定义xml外观中包含以下代码:

<!-- alertdialog_menu.xml -->
<LinearLayout
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:weightSum="1"
    android:layout_marginStart="5dp"
    android:layout_marginLeft="5dp">

    <ImageView
        android:id="@+id/imageView"
        android:layout_width="0dp"
        android:layout_height="32dp"
        android:layout_weight="0.10"
        app:srcCompat="@mipmap/ic_satellite_black_24dp"
        android:scaleType="fitXY"/>

    <Switch
       android:id="@+id/satelliteSwitch"
       android:layout_width="0dp"
       android:layout_height="36dp"
       android:layout_weight="0.90"
       android:text="Satellite"
       android:textSize="22sp"/>

以下是我用来显示弹出窗口的java代码。

LayoutInflater li = LayoutInflater.from(this);
View promptsView = li.inflate(R.layout.alertdialog_menu, null);
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this);
alertDialogBuilder.setView(promptsView);
alertDialogBuilder.create().show();

这就是我所看到的: enter image description here

我应该在卫星图像视图的左侧看到图标imageView,但我看到空白空间。

1 个答案:

答案 0 :(得分:3)

您应该使用android:src="@mipmap/ic_satellite_black_24dp"代替app:srcCompat="@mipmap/ic_satellite_black_24dp"

之间,将您的图片放到drawable文件夹,而不是mipmap文件夹。 Mipmap文件夹用于放置您的应用/启动器icons

要了解差异,请检查mipmap vs drawable folders