Прокручиваемый фон в Android TextView - PullRequest
2 голосов
/ 04 декабря 2011

У меня есть TextView с плиточным фоном, определенным как

<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
android:src="@drawable/tile" 
android:tileMode="repeat" />

Работает нормально, но проблема в том, что когда я прокручиваю вниз, чтобы прочитать больше текста, фон остается на том же месте, тогда как я хотел бы, чтобы он прокручивался вместе с текстом. Любые идеи приветствуются.

Текстовое представление определяется как:

<view xmlns:android="http://schemas.android.com/apk/res/android"
class="com.example.android.notepad.NoteEditor$LinedEditText"
android:id="@+id/note"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/app_bg_r"
android:textColor="#666666"
android:padding="5dp"
android:scrollbars="vertical"
android:fadingEdge="vertical" 
android:gravity="top"
android:textSize="22sp"
android:lineSpacingExtra ="7sp"
android:capitalize="sentences" />

Класс LinedEditText не делает ничего, кроме установки собственного шрифта.

Текстовое представление устанавливается в onCreate Действия с

setContentView(R.layout.note_editor);

1 Ответ

0 голосов
/ 04 декабря 2011

Может быть способ заставить это работать только с использованием TextView, но если никто не предложит решение, я бы порекомендовал обернуть ваш TextView в ViewGroup (FrameLayout, RelativeLayout, LinearLayout и т. Д.) И затем обернуть это с ScrollView. Вероятно, это не лучшее решение, поскольку оно добавляет много просмотров, но, вероятно, будет работать.

Установите фон для ViewGroup и поместите его в текстовое представление wrap_content. Позвольте ScrollView справиться с прокруткой.

Вы можете попробовать это без дополнительной ViewGroup, чтобы увидеть, будет ли фон работать на ScrollView, но вы можете снова столкнуться с той же проблемой.

<ScrollView
   android:layout_width="fill_parent"
   android:layout_height="fill_parent">
   <RelativeLayout
      android:layout_width="fill_parent"
      android:layout_height="wrap_content"
      android:background="@drawable/app_bg_r" >
      <TextView
           android:layout_width="wrap_content"           
           android:layout_height="wrap_content" />
   </RelativeLayout>
</ScrollView>
...