2016-07-07 64 views
1

我想在用戶的圓角圖像的角落顯示一個數字,類似於使用facebook或messenger圖標的圖標。數將低於100在ImageView的角落顯示文字

enter image description here

+0

哪裏是在圖像編號? – Piyush

+1

你可以使用framelyaout,並把圖像視圖和textview作爲孩子在框架佈局和設置textview'gravity:bottom | right' –

+0

[如何在佈局的角落有徽章圖標]可能的副本(http://stackoverflow.com/questions/37747079/how-to-have-badge-icon-at-corner-of-an-layout) – SaravInfern

回答

3

一個簡單的整數您可以用TextViewImageView做一個RelativeLayout像這裏面:

<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> 

輸出

enter image description here

+0

我最適合的解決方案。謝謝 –

1
<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>