如何使用与此完全相同的图标布局文本:
我用这个布局做到了:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="64dp"
android:layout_height="64dp">
<ImageView
android:id="@+id/imgIcon"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="8dp"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:layout_marginBottom="24dp"
android:duplicateParentState="true"
android:src="@drawable/delete_icon" />
<TextView
android:id="@+id/txtLabel"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:gravity="center_horizontal"
android:duplicateParentState="true"
android:text="xxx" />
</RelativeLayout>
但是Android guide说:使用复合drawables - 包含ImageView和TextView的LinearLayout可以作为复合drawable更有效地处理。 我试过,但我找不到我需要的布局参数(图像的大小,图像和文本的不同填充)。
<TextView
android:id="@+id/txtLabel"
android:layout_width="64dp"
android:layout_height="64dp"
android:layout_alignParentBottom="true"
android:gravity="center_horizontal|bottom"
android:duplicateParentState="true"
android:drawableTop="@drawable/delete_icon"
android:paddingTop="8dp"
android:drawablePadding="8dp"
android:text="xxx" />
这是结果(左边是RelativeLayout,右边是复合drawable):
如果有更好的标准组件提供必要的参数,那也是可以接受的。
答案 0 :(得分:0)
我也尝试过这样做 我得到了这个结果(请注意图像有一个“光学方块”,小于物理图像尺寸):
我正在使用我最喜欢的方法:复合绘图。
可是:
1 - 我准备了一些不同分辨率的图像,因此32 * 32被称为标准mdpi(160dpi)分辨率,并且在不同分辨率下缩放(xxhdpi为96 * 96像素宽和高) - 2 - 我将这些图像放在相应的可绘制文件夹中(drawable-ldpi到drawable-xxhdpi)。 3 - 我稍微纠正了布局,以便匹配。
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#fff"
android:layout_margin="0dp"
android:padding="0dp"
>
<TextView
android:id="@+id/txtLabel"
android:layout_width="64dp"
android:layout_height="64dp"
android:layout_alignParentBottom="true"
android:gravity="center_horizontal|bottom"
android:padding="8dp"
android:drawableTop="@drawable/delete_icon"
android:drawablePadding="4dp"
android:text="XXX"
android:textSize="12sp"
/>
</RelativeLayout>
我使用全部大写字母来更好地查看文本和可绘制文本之间的间距 它符合您的需求吗?