将两个抽屉组合在一起,一个在另一个上,具有不同的尺寸

时间:2014-09-30 09:01:47

标签: android layout drawable picasso

我有一个游戏,将用户的头像显示为可绘制的。头像的宽度为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>标记

访问

1 个答案:

答案 0 :(得分:0)

快速解决方案是使用RelativeLayout

  • 将头像ImageView作为第一个孩子放在RelativeLayout
  • 将点ImageView放在左下方的图像视图上,例如

    layout_alignParentLeft="true"
    layout_alignParentBottom="true"