[英]how to fit image to the same width inside TextView android java
[英]Android textview width not same
我正在做聊天系統。 所以我需要做 UI 來顯示消息和發送時間。
請先看下面的圖片。 紅色是文本視圖寬度,藍色是發送時間文本視圖寬度。 現在我將發送時間設置在文本視圖的右側。
我想設置發送時間文本視圖有一個邊距。 但是你可以看到文本視圖的寬度是不一樣的。 所以我不是硬編碼邊距。 所以任何人都可以給我一些有用的建議給我。 十分感謝。
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:app="http://schemas.android.com/apk/res-auto">
<androidx.constraintlayout.widget.Guideline
android:id="@+id/guideline"
android:layout_width="wrap_content"
android:orientation="vertical"
app:layout_constraintGuide_percent="0.60"
android:layout_height="wrap_content"/>
<TextView
android:id="@+id/tvMessage"
android:layout_width="0dp"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="@id/guideline"
android:layout_height="wrap_content"
android:textColor="@color/white_color"
android:background="@color/red_color"
android:maxWidth="@dimen/_151sdp"
android:textStyle="bold"
android:minWidth="30dp"/>
<TextView
android:id="@+id/tvDateTime"
android:layout_width="0dp"
app:layout_constraintBottom_toBottomOf="@id/tvMessage"
app:layout_constraintEnd_toEndOf="@id/tvMessage"
android:layout_height="wrap_content"
android:layout_alignBottom="@id/tvMessage"
android:layout_toRightOf="@id/tvMessage"
android:textColor="@color/chat_mag_date_time"/>
</androidx.constraintlayout.widget.ConstraintLayout>
要在另一個組件中使用組件,您可以使用以下內容: CardView
、 FrameLayout
或ConstraintLayout
。
像這樣的ConstraintLayout
:
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/msg_layout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@color/cardview_dark_background">
<TextView
android:id="@+id/tvMessage"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:maxWidth="151dp"
android:minWidth="30dp"
android:text="fdsfdsfd
dsadas
asd
asd
as"
android:textColor="@color/black"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:layout_marginEnd="8dp"
/>
<TextView
android:id="@+id/tvDateTime"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@id/tvMessage"
android:layout_toRightOf="@id/tvMessage"
android:text="1234"
android:textColor="@color/purple_700"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/tvMessage"
android:layout_marginStart="8dp"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
將以下對齊添加到 TextView "tvDateTime"
android:layout_alignBottom="@id/tvMessage"
android:layout_alignRight="@id/tvMessage"
並刪除額外的 alignment 指令,因此您的 TextView 代碼將變為:
<TextView
android:id="@+id/tvDateTime"
android:layout_width="wrap_content"
android:text="12:45"
android:layout_height="wrap_content"
android:layout_alignBottom="@id/tvMessage"
android:layout_alignRight="@id/tvMessage"
android:textColor="@color/grey"/>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.