如何使用给定的 XML 代码将文本移动到圆圈下方?
How to shift text below the circle using given XML code?
我正在使用下面的 XML
代码和 RecyclerView
但我得到的是卡片内部和上侧的文字 但我想看看圆圈下面的文字,应该做哪些更改我输入以下 XML 代码?
参考图像由当前和期望输出图像组成,如
<?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="200dp"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:padding="5dp">
<!--
grid items for RecyclerView
-->
<androidx.cardview.widget.CardView
android:id="@+id/myCardView"
android:layout_width="110dp"
android:layout_height="110dp"
app:cardCornerRadius="50dp"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true">
<ImageView
android:id="@+id/image"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:scaleType="fitXY"
android:src="@mipmap/ic_launcher" />
<TextView
android:id="@+id/name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:text="ABCD"
android:textSize="20sp"
android:textColor="#fff" />
</androidx.cardview.widget.CardView>
</RelativeLayout>
CardView
只能接受 1 个直接子级,因此您需要用另一个 ViewGroup
包裹您的视图,如下所示:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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="200dp"
android:padding="5dp">
<!--
grid items for RecyclerView
-->
<androidx.cardview.widget.CardView
android:id="@+id/myCardView"
android:layout_width="110dp"
android:layout_height="110dp"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
app:cardCornerRadius="50dp">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/image"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:scaleType="fitXY"
android:src="@mipmap/ic_launcher" />
<TextView
android:id="@+id/name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/image"
android:layout_centerHorizontal="true"
android:text="ABCD"
android:textColor="#000"
android:textSize="20sp" />
</RelativeLayout>
</androidx.cardview.widget.CardView>
</RelativeLayout>
然后您可以根据需要调整视图的引力。
您可以从 CardView
中取出 TextView
以使 ImageView
完全占据圆角 CardView
的整个区域
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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="200dp"
android:gravity="center"
android:padding="5dp">
<!--
grid items for RecyclerView
-->
<TextView
android:id="@+id/name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/myCardView"
android:layout_centerHorizontal="true"
android:textColor="#fff"
android:text="ABCD"
android:textSize="20sp" />
<androidx.cardview.widget.CardView
android:id="@+id/myCardView"
android:layout_width="110dp"
android:layout_height="110dp"
android:layout_centerHorizontal="true"
app:cardCornerRadius="50dp">
<ImageView
android:id="@+id/image"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="fitXY"
android:src="@mipmap/ic_launcher" />
</androidx.cardview.widget.CardView>
</RelativeLayout>
预览
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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="200dp"
android:gravity="center"
android:padding="5dp">
<androidx.cardview.widget.CardView
android:id="@+id/myCardView"
android:layout_width="110dp"
android:layout_height="110dp"
android:layout_centerInParent="true"
app:cardCornerRadius="60dp">
<ImageView
android:id="@+id/image"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="fitXY"
android:src="@mipmap/ic_launcher" />
</androidx.cardview.widget.CardView>
<TextView
android:id="@+id/name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/myCardView"
android:layout_marginTop="0dp"
android:text="ABCD"
android:textAlignment="center"
android:textSize="20sp" />
</RelativeLayout>
我正在使用下面的 XML
代码和 RecyclerView
但我得到的是卡片内部和上侧的文字 但我想看看圆圈下面的文字,应该做哪些更改我输入以下 XML 代码?
参考图像由当前和期望输出图像组成,如
<?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="200dp"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:padding="5dp">
<!--
grid items for RecyclerView
-->
<androidx.cardview.widget.CardView
android:id="@+id/myCardView"
android:layout_width="110dp"
android:layout_height="110dp"
app:cardCornerRadius="50dp"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true">
<ImageView
android:id="@+id/image"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:scaleType="fitXY"
android:src="@mipmap/ic_launcher" />
<TextView
android:id="@+id/name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:text="ABCD"
android:textSize="20sp"
android:textColor="#fff" />
</androidx.cardview.widget.CardView>
</RelativeLayout>
CardView
只能接受 1 个直接子级,因此您需要用另一个 ViewGroup
包裹您的视图,如下所示:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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="200dp"
android:padding="5dp">
<!--
grid items for RecyclerView
-->
<androidx.cardview.widget.CardView
android:id="@+id/myCardView"
android:layout_width="110dp"
android:layout_height="110dp"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
app:cardCornerRadius="50dp">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/image"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:scaleType="fitXY"
android:src="@mipmap/ic_launcher" />
<TextView
android:id="@+id/name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/image"
android:layout_centerHorizontal="true"
android:text="ABCD"
android:textColor="#000"
android:textSize="20sp" />
</RelativeLayout>
</androidx.cardview.widget.CardView>
</RelativeLayout>
然后您可以根据需要调整视图的引力。
您可以从 CardView
中取出 TextView
以使 ImageView
完全占据圆角 CardView
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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="200dp"
android:gravity="center"
android:padding="5dp">
<!--
grid items for RecyclerView
-->
<TextView
android:id="@+id/name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/myCardView"
android:layout_centerHorizontal="true"
android:textColor="#fff"
android:text="ABCD"
android:textSize="20sp" />
<androidx.cardview.widget.CardView
android:id="@+id/myCardView"
android:layout_width="110dp"
android:layout_height="110dp"
android:layout_centerHorizontal="true"
app:cardCornerRadius="50dp">
<ImageView
android:id="@+id/image"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="fitXY"
android:src="@mipmap/ic_launcher" />
</androidx.cardview.widget.CardView>
</RelativeLayout>
预览
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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="200dp"
android:gravity="center"
android:padding="5dp">
<androidx.cardview.widget.CardView
android:id="@+id/myCardView"
android:layout_width="110dp"
android:layout_height="110dp"
android:layout_centerInParent="true"
app:cardCornerRadius="60dp">
<ImageView
android:id="@+id/image"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="fitXY"
android:src="@mipmap/ic_launcher" />
</androidx.cardview.widget.CardView>
<TextView
android:id="@+id/name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/myCardView"
android:layout_marginTop="0dp"
android:text="ABCD"
android:textAlignment="center"
android:textSize="20sp" />
</RelativeLayout>