Android 如何在 TextView 右侧设计小圆点
How To Design small Dot to the right of TextView in Android
如何在Native中实现这些UI Android,我在TextView中尝试了drawableRight with circle Drawable,但是我无法得到准确的结果。
使用LinearLayout:
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="top"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="SORT"/>
<ImageView
android:layout_width="10dp"
android:layout_height="10dp"
android:src="@mipmap/ic_launcher"/>
</LinearLayout>
结果:
根据需要添加填充或边距 ;)
布局如下
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="50dp">`enter code here`
<TextView
android:id="@+id/img_notification"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="8dp"
android:padding="10dp"
android:text="SORT"
android:src="@drawable/ic_bell"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
tools:ignore="ContentDescription" />
<TextView
android:id="@+id/txt_notification_count"
android:layout_width="8dp"
android:layout_height="8dp"
android:layout_marginEnd="4dp"
android:background="@drawable/background_rounded_bottom_count"
android:gravity="center"
android:textColor="@color/white"
android:textSize="12sp"
android:visibility="visible"
app:layout_constraintEnd_toEndOf="@+id/img_notification"
app:layout_constraintTop_toTopOf="@+id/img_notification" /> </android.support.constraint.ConstraintLayout>
XML 可绘制:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<solid android:color="@color/colorPrimary" />
</shape>
尝试使用此代码设计相同的视图
main_activity.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello Text"
android:textColor="#000"
android:textSize="18sp"/>
<LinearLayout
android:layout_width="10dp"
android:layout_height="10dp"
android:background="@drawable/pink_circle"
android:paddingLeft="2dp"/>
</LinearLayout>
</LinearLayout>
pink_circle.xml
<?xml version="1.0" encoding="utf-8"?>
<shape
android:shape="oval" xmlns:android="http://schemas.android.com/apk/res/android">
<solid
android:color="#F04B82"/>
</shape>
试试这个:
layout_file.xml
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/txt_dot"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World"
android:textSize="24sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<ImageView
android:id="@+id/img_circle"
android:layout_width="12dp"
android:layout_height="12dp"
android:src="@drawable/circle_draw"
app:layout_constraintTop_toTopOf="@id/txt_dot"
app:layout_constraintStart_toEndOf="@id/txt_dot" />
</androidx.constraintlayout.widget.ConstraintLayout>
circle_draw.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<solid android:color="#F04B82" />
</shape>
如何在Native中实现这些UI Android,我在TextView中尝试了drawableRight with circle Drawable,但是我无法得到准确的结果。
使用LinearLayout:
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="top"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="SORT"/>
<ImageView
android:layout_width="10dp"
android:layout_height="10dp"
android:src="@mipmap/ic_launcher"/>
</LinearLayout>
结果:
根据需要添加填充或边距 ;)
布局如下
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="50dp">`enter code here`
<TextView
android:id="@+id/img_notification"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="8dp"
android:padding="10dp"
android:text="SORT"
android:src="@drawable/ic_bell"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
tools:ignore="ContentDescription" />
<TextView
android:id="@+id/txt_notification_count"
android:layout_width="8dp"
android:layout_height="8dp"
android:layout_marginEnd="4dp"
android:background="@drawable/background_rounded_bottom_count"
android:gravity="center"
android:textColor="@color/white"
android:textSize="12sp"
android:visibility="visible"
app:layout_constraintEnd_toEndOf="@+id/img_notification"
app:layout_constraintTop_toTopOf="@+id/img_notification" /> </android.support.constraint.ConstraintLayout>
XML 可绘制:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<solid android:color="@color/colorPrimary" />
</shape>
尝试使用此代码设计相同的视图
main_activity.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello Text"
android:textColor="#000"
android:textSize="18sp"/>
<LinearLayout
android:layout_width="10dp"
android:layout_height="10dp"
android:background="@drawable/pink_circle"
android:paddingLeft="2dp"/>
</LinearLayout>
</LinearLayout>
pink_circle.xml
<?xml version="1.0" encoding="utf-8"?>
<shape
android:shape="oval" xmlns:android="http://schemas.android.com/apk/res/android">
<solid
android:color="#F04B82"/>
</shape>
试试这个:
layout_file.xml
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/txt_dot"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World"
android:textSize="24sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<ImageView
android:id="@+id/img_circle"
android:layout_width="12dp"
android:layout_height="12dp"
android:src="@drawable/circle_draw"
app:layout_constraintTop_toTopOf="@id/txt_dot"
app:layout_constraintStart_toEndOf="@id/txt_dot" />
</androidx.constraintlayout.widget.ConstraintLayout>
circle_draw.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<solid android:color="#F04B82" />
</shape>