我正在尝试使用Android的“Actor”开源Messenger应用程序,但它有一个显示RTL语言的聊天气泡的错误。显示英文文本和RTL语言文本的气泡here。
我希望它像this一样,就像“Whatsapp”这样的信使。
这是气泡视图的xml文件:
<im.actor.sdk.controllers.conversation.view.BubbleContainer xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/mainContainer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:clickable="true">
<im.actor.sdk.controllers.conversation.view.BubbleTextContainer
android:id="@+id/fl_bubble"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:duplicateParentState="true">
<TextView
android:id="@+id/tv_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="top|left"
android:includeFontPadding="false"
android:textSize="15sp" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|right"
android:layout_marginBottom="-4dp"
android:layout_marginRight="-4dp"
android:baselineAligned="false"
android:gravity="center_vertical"
android:paddingLeft="4dp">
<TextView
android:id="@+id/tv_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:includeFontPadding="false"
android:textSize="13sp" />
<im.actor.sdk.view.TintImageView
android:id="@+id/stateIcon"
android:layout_width="16dp"
android:layout_height="9dp"
android:layout_marginLeft="2dp" />
</LinearLayout>
</im.actor.sdk.controllers.conversation.view.BubbleTextContainer>
我尝试将“左”和“右”重力参数更改为“开始”和“结束”,但它不起作用。
我该如何更改此布局文件?
答案 0 :(得分:2)
这些气泡测量在&#34; BubbleTextContainer&#34;类。 你应该在那里做一些改变。看到代码,我猜你会明白的。更具体地说, onMeasure 方法中有 fullContentH 和 fullContentW 变量。根据您的需要改变它们。
答案 1 :(得分:1)
确保将清单中的应用程序标记的rtlSupport设置为true。