我有一个游戏,将用户的头像显示为可绘制的。头像的宽度为150dp。现在我想在底部中心放置一个红色或绿色点,表示用户是否在线。我也有红色/绿色点作为可绘制的。点的宽度/高度为auf 30dp。我如何组合它们?
到目前为止,我正在使用毕加索库加载这些头像。我真的想继续这样做,这有可能吗?
我有@drawable/avatar
和@drawable/red_dot
或@drawable/green_dot
不知道我在这里可以提供什么样的源代码: - )
提前感谢您的帮助!
编辑: 我一直在试验Layer List,我在drawable目录中保存为avatar.xml,但这只显示了两个相同大小的drawable ...所以不是我真正想要的东西:
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/avatarPic"
android:drawable="@drawable/avatar"
android:width="150dp"
android:height="wrap_content"
/>
<item
android:id="@+id/avatarBadge"
android:drawable="@drawable/redDot"
android:width="30dp"
android:height="30dp"
/>
</layer-list>
第二次编辑:
我想提一下,我在这里使用了RelativeLayout。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<ImageView
android:id="@+id/avatarPic"
android:layout_width="80dp"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:adjustViewBounds="true"
android:src="@drawable/avatar" >
</ImageView>
<ImageView
android:id="@+id/avatarBadge"
android:layout_width="15dp"
android:layout_height="15dp"
android:layout_alignBottom="@id/avatarPic"
android:layout_centerHorizontal="true"
android:layout_centerVertical="false"
android:layout_marginBottom="1dp"
android:adjustViewBounds="true"
android:src="@drawable/red_dot" >
</ImageView>
</RelativeLayout>
并且在主要布局中可以通过<include>
标记
答案 0 :(得分:0)
快速解决方案是使用RelativeLayout
。
ImageView
作为第一个孩子放在RelativeLayout
将点ImageView
放在左下方的图像视图上,例如
layout_alignParentLeft="true"
layout_alignParentBottom="true"