【发布时间】:2021-08-06 04:43:03
【问题描述】:
我正在开发我的 android 项目,以在两个文本视图中输入文本并在 email_subject 文本视图旁边显示 Inbox 文本。我遇到了 textview 的问题,因为当文本又短又大时,它不会将 Inbox 移动到 textview 旁边。
这是它显示的内容:
这是我想要实现的目标:
这里是 content_main.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"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
android:orientation="horizontal">
<FrameLayout
android:id="@+id/flString"
android:layout_width="295dp"
android:layout_height="135dp"
tools:layout_editor_absoluteX="10dp"
tools:ignore="MissingConstraints">
<TextView
android:id="@+id/email_subject"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="4dp"
android:layout_marginTop="19dp"
android:text="Mail delivery failed: returning message to sender"
android:textColor="#757575"
android:textSize="20sp"
android:textStyle="bold" />
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
android:id="@+id/mailbox_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/rounded_mailbox"
android:text="Inbox"
android:textColor="#757575"
android:textSize="12sp"
android:layout_alignParentRight="true"
android:layout_alignParentBottom="true" />
</RelativeLayout>
</FrameLayout>
<ImageView
android:id="@+id/ivFavorite"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="284dp"
android:layout_marginTop="16dp"
android:padding="5dp"
android:src="@drawable/ic_star_black_24dp"
app:layout_constraintHorizontal_bias="0.723"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<ImageView
android:id="@+id/more_menu"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="284dp"
android:layout_marginTop="54dp"
android:padding="5dp"
android:src="@drawable/ic_baseline_3_dots_24"
app:layout_constraintHorizontal_bias="0.723"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/from_me"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="72dp"
android:layout_marginTop="8dp"
android:text="to me"
android:textColor="#757575"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/from_sender" />
<ImageView
android:id="@+id/dropdown_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="114dp"
android:layout_marginTop="8dp"
android:src="@drawable/ic_arrow_down"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/from_sender" />
</androidx.constraintlayout.widget.ConstraintLayout>
你能告诉我一个例子,当文本又短又大时,如何让 Inbox 文本显示在文本的末尾??
编辑:当我尝试这个时:
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/flString1"
android:layout_width="295dp"
android:layout_height="wrap_content"
tools:ignore="MissingConstraints">
<TextView
android:id="@+id/email_subject"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="RE: SRX1517391641ID - [EXTERNAL] Re: Reported deliverability problem to Outlook.com SRX1517391641ID "
android:textColor="#757575"
android:textSize="20sp"
android:textStyle="bold"
tools:ignore="MissingConstraints" />
<TextView
android:id="@+id/mailbox_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="false"
android:layout_alignParentBottom="false"
android:layout_marginBottom="83dp"
android:background="@drawable/rounded_mailbox"
android:text="Inbox"
android:textColor="#757575"
android:textSize="12sp"
android:gravity="bottom|end" />
</androidx.constraintlayout.widget.ConstraintLayout>
它不会将收件箱文本移动到文本末尾。有什么想法吗??
【问题讨论】:
-
在使用
constraint layout时尝试保持简单的层次结构,删除framelayout并将收件箱限制为bottom-end应该可以解决您的问题。 -
@SantanuSur 感谢您的帮助。我已将
androidx.constraintlayout.widget.ConstraintLayout替换为framelayout。如何在收件箱文本视图中添加bottom-end? -
@Santanu Sur 我添加了
android:gravity="bottom|end",它不会将收件箱文本视图移动到文本视图的末尾。有什么想法吗?
标签: java android xml android-studio textview