hint and textview with right gravity and a singleline

codeScriber picture codeScriber · Jan 10, 2011 · Viewed 10.9k times · Source

I've opened a bug but i was wondering if anyone encountered this issue and knows a workaround. If you define a text view with a hint inside it, give it right gravity (android:gravity="right") then if you define android:singleLine=true or android:maxLines="1" or android:scrollHorizonatally="true" you don't see the hint. removing the right gravity returns the hint to the left side, removing all the tree params i mentioned above puts the hint on the right side. i want my hint on the right, but i need a single horizontal line...

here's the sample layout that doesn't show the hint:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:padding="5dp">
            <EditText android:layout_width="fill_parent"
                android:layout_gravity="center_vertical|right"
                android:layout_height="wrap_content"
                android:layout_margin="6dp"
                android:textSize="16sp"
                android:paddingRight="5dp"
                android:id="@+id/c"
                android:gravity="right"
                android:hint="hello!!!"
                android:scrollHorizontally="true"
                android:maxLines="1"
                android:singleLine="true"/>
</LinearLayout>

i checked on 1.6 and 2.1 emulators and it reproduces 100%, i'm prettysure it's a bug, i don't see the connection between single line and the hint.... what's more the hint got it's own layout in the TextView (mLayout and mHintLayout both exists, in onDraw if the text length is 0 mHintLayout if mHint is not null is used).

Answer

dylan murphy picture dylan murphy · May 11, 2011

Did you try android:ellipsize="start"? This has worked great for me in the past when I've wanted my hint and EditText to be centered.