【问题标题】:Show Text on corner of a ImageView在 ImageView 的角落显示文本
【发布时间】:2016-07-07 10:34:12
【问题描述】:

我想在类似于 Messenger 的用户圆形图像的角上显示一个数字,该数字是 facebook 或 messenger 图标的图像。 Number 将是一个小于 100 的简单整数。

【问题讨论】:

标签: android android-layout textview imageview


【解决方案1】:

您可以在 RelativeLayout 中使用 TextViewImageView 来做到这一点,如下所示:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:orientation="horizontal"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:gravity="center"
    android:padding="20dp"
    android:background="#786993">
    <ImageView
        android:id="@+id/image"
        android:src="@drawable/q_icon"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
    <TextView
        android:id="@+id/tab_counter_text"
        android:text="20"
        android:layout_alignRight="@id/image"
        android:layout_alignBottom="@id/image"
        android:layout_width="20dp"
        android:layout_gravity="center"
        android:background="@drawable/circle_white"
        android:layout_height="20dp"
        android:gravity="center"
        android:textColor="#786993"
        android:textSize="12sp" />
</RelativeLayout>

您可以将TextView 的背景设置为可绘制的自定义圆,如下所示(circle_white.xml):

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval" >
    <solid android:color="#ffffff"/>
</shape>

输出

【讨论】:

  • 挖掘最合适的解决方案。谢谢
【解决方案2】:
<FrameLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/container_view">
    <ImageView
        android:layout_height="50dp"
        android:layout_width="50dp"
        android:src="@drawable/image"/>
    <TextView
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        android:text="10"
        android:layout_gravity="bottom|end"
        android:textColor="@color/colorPrimary"
        android:background="@drawable/circleBackground"/>

</FrameLayout>

【讨论】:

    猜你喜欢
    • 2011-07-12
    • 1970-01-01
    • 1970-01-01
    • 2017-02-05
    • 2020-09-07
    • 2020-08-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多