2017-01-14 61 views
1

我已設置 android:gravity="right" 將我的文本對齊到右側。 但是,當字符串的長度超過空格時,將無法看到以下文本。在Android Studio中需要幫助:文本對齊

我該如何解決這個問題,以便前一個條目向左移動?

看來,我的代碼的問題來自EditText.append(),當我從OnClickListener追加新的輸入,文本將表現方式鍵盤輸入一樣。

你能指導我如何解決它嗎?對不起,我是新來的Android

<EditText 
    android:id="@+id/equation" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_marginEnd="16dp" 
    android:layout_marginLeft="16dp" 
    android:layout_marginRight="16dp" 
    android:layout_marginStart="16dp" 
    android:layout_marginTop="40dp" 
    android:ems="10" 
    android:focusable="false" 
    android:focusableInTouchMode="false" 
    android:inputType="numberSigned|numberDecimal" 
    app:layout_constraintLeft_toLeftOf="parent" 
    app:layout_constraintRight_toRightOf="parent" 
    app:layout_constraintTop_toTopOf="parent" 
    android:clickable="false" 
    android:gravity="right" 
    android:layout_gravity="end"/> 

//圖片

編輯文本組件右對齊。

當字符串的長度超過該空間,新的條目不能被看到。

如何更改它,以便舊條目向左移動,新條目將繼續出現在編輯文本小部件的右端?

+0

顯示你的XML請 –

回答

4

只要加入這個屬性到您的的EditText

android:layout_alignParentRight="true" 

此屬性支持所有的Android版本。儘管@pail kanti也正確,但android:textDirection="anyRtl"支持API級別17及以上

謝謝。

+0

看來我的代碼問題來自於'EditText.append()',當我從OnClickListener追加新輸入時,文本的行爲將與鍵盤輸入相同。 你能指導我如何解決它嗎?對不起,我是Android新手 – KuKKi

+0

@KuKKi上面的代碼是否適合你? –

+0

如果我使用模擬器鍵盤輸入,它會起作用。但是,如果使用append()方法附加文本則不是。 – KuKKi

1

只需添加到您的的EditText

android:textDirection="anyRtl" 

這將解決您的問題。

+0

新條目仍掉的可視空間的加入這一行後 – KuKKi

+0

刪除這兩條線: '機器人:可調焦=「假」 android:focusableInTouchMode =「false」' 我正在工作。 –

+0

我的錯誤** minSdkVersion **需要17或以上。檢查你的** build.gradle **。 –

1

試試這個:

<EditText 
     android:id="@+id/equation" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:maxLines="1" 
     android:scrollHorizontally="true" 
     android:ellipsize="end" 
     android:layout_marginEnd="16dp" 
     android:layout_marginLeft="16dp" 
     android:layout_marginRight="16dp" 
     android:layout_marginStart="16dp" 
     android:layout_marginTop="40dp" 
     android:ems="10" 
     android:focusable="false" 
     android:focusableInTouchMode="false" 
     android:inputType="numberSigned|numberDecimal" 
     android:clickable="false" 
     android:gravity="right"> 
    </EditText> 
+0

看來,我的代碼的問題來自'EditText.append()',當我追加來自OnClickListener的新輸入,文本將按照鍵盤輸入的方式行事。 你能指導我如何解決它嗎?抱歉,我是Android新手 – KuKKi

0
android:inputType="....|textMultiLine"