фон Android EditText

Я хотел бы установить мой EditText background.

Хм... Я даже не знаю, как объяснить.... Когда много текста, включается вертикальная прокрутка... Мне нужно "прокручивать" фон, когда пользователь прокручивает текст (теперь у меня это, когда пользователь прокручивает фон текста фиксированный, поэтому текст стал пересекаться линиями фона)

У вас есть идеи?


person davs    schedule 14.11.2010    source источник


Ответы (2)


Создайте рисование в xml, подобное этому, для строк, например mybackground.xml, где @drawable/divider будет вашим изображением линии с предпочтительным расстоянием между строками.

<bitmap android="http://schemas.android.com/apk/res/android" 
     android:src="@drawable/divider"  
     android:tileMode="repeat" 
     android:dither="true"
/> 

и установите следующие атрибуты в элементе управления EditText, чтобы настроить

android:background="@drawable/mybackground"
android:lineSpacingExtra="Your Value" 
android:lineSpacingMultiplier="Your Value" 
person Samuel    schedule 07.12.2010
comment
Он просто добавляет повторяемый фон для edittext. Но когда пользователь прокручивает текст (вертикальная прокрутка), текст перемещается, но фон остается как есть. Выглядит не красиво... :( - person davs; 08.12.2010
comment
рассмотрите возможность создания высоты EditText как обертки с минимальной установленной высотой и поместите ее в прокрутку. это решило мою проблему :) - person Samuel; 24.01.2011

Вы можете указать lineSpacingExtra и lineSpacingMultiplier попробуйте, а затем попробуйте настроить фоновое изображение так, чтобы оно все подходит как хотелось. В качестве альтернативы вы также можете попробовать поиграть с изображением из 9 патчей и заставить его повторяться по желанию, но я не уверен, что это будет работать таким образом. Это два варианта, которые можно попробовать, может быть, я смогу придумать больше позже.

РЕДАКТИРОВАТЬ: Это не будет работать с 9 патчами.

person Octavian A. Damiean    schedule 14.11.2010
comment
Я не понял, как lineSpacing может мне помочь :( ... Можете ли вы привести какой-нибудь пример, плз - person davs; 14.11.2010