我是android的新手,在开始布局的时候,我只是把两个textViews的底部边缘固定在一条直线上,而没有一些硬编码(比如定义固定的sp值来对齐两者)。这是我的密码:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/time_text_view"
android:text="2:10"
android:textStyle="bold"
android:textSize="40sp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/time_text_view"
android:text="PM"
android:textSize="20sp"
android:textStyle="bold" />
</RelativeLayout>下面是编译后的样子:
我想让'PM‘和时间在相同的基础上,而不是在布局的基础上.

发布于 2019-12-26 11:51:25
您可以使用ConstraintLayout,如:
<?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"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="bottom"
tools:context=".MainActivity">
<TextView
android:id="@+id/time_text_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="2:10"
android:textSize="40sp"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="PM"
android:textSize="20sp"
android:textStyle="bold"
app:layout_constraintBaseline_toBaselineOf="@+id/time_text_view"
app:layout_constraintStart_toEndOf="@+id/time_text_view" />
</androidx.constraintlayout.widget.ConstraintLayout>或使用RelativeLayout作为:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<TextView
android:id="@+id/time_text_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="2:10"
android:textSize="40sp"
android:textStyle="bold" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/time_text_view"
android:layout_toEndOf="@+id/time_text_view"
android:text="PM"
android:textSize="20sp"
android:textStyle="bold" />
</RelativeLayout>发布于 2019-12-26 11:51:05
您可以使用ConstraintLayout轻松地通过分配:
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="wrap_content”android:layout_height="wrap_content“tools:context=".MainActivity">
发布于 2019-12-26 11:52:14
更新代码
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="horizontal"
android:gravity="bottom"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
tools:context=".MainActivity">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="2:10"
android:textStyle="bold"
android:textSize="40sp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="PM"
android:textSize="20sp"
android:textStyle="bold" />
</LinearLayout>如果这有用的话请告诉我。
https://stackoverflow.com/questions/59487985
复制相似问题