我想开发一个应用商店。我想在图标顶部自动添加一个标签(如“新”或“热”标签)。喜欢这张图片
这怎么可能?我的意思是我可以更改图像的可见性,但 android 布局不会让图像视图在另一个之上。那怎么可能呢?谢谢。
我想开发一个应用商店。我想在图标顶部自动添加一个标签(如“新”或“热”标签)。喜欢这张图片
这怎么可能?我的意思是我可以更改图像的可见性,但 android 布局不会让图像视图在另一个之上。那怎么可能呢?谢谢。
请使用此代码:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<ImageView
android:id="@+id/image"
android:layout_width="150dp"
android:layout_height="150dp"
android:background="@android:color/white" />
<ImageView
android:id="@+id/line"
android:layout_width="70dp"
android:layout_height="20dp"
android:layout_alignEnd="@+id/image"
android:background="@android:color/holo_purple"
android:rotation="20" />
<TextView
android:id="@+id/lable"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignEnd="@+id/image"
android:padding="8dp"
android:rotation="20"
android:text="New"
android:textColor="@android:color/white" />
</RelativeLayout>
您可以在 RelativeLayout 或 FrameLayout 中创建两个图像视图,以便它们重叠,然后设置其中一个android:visibility="gone"
。在需要时将它们设置为可见。
只是为您提供另一种我认为更便携的解决方案,并且以某种方式为您提供不那么混乱的 xml 布局文件。
public static Bitmap combineBitmaps(Bitmap base, Bitmap label, Context context) {
if (base == null || label == null) {
System.err.println("Bitmap is null!");
return null;
}
if(base.getWidth() != label.getWidth() || base.getHeight() != label.getHeight()){
System.err.println("Width or height mismatch!");
return null;
}
Canvas canvas = new Canvas(base);
canvas.drawBitmap(label, 0f, 0f, null);
return base;
}