Я пытаюсь реализовать однострочное текстовое представление, которое будет автоматически прокручивать. Но я, к сожалению, не могу заставить его работать. AutoScrollTextView объявлен внутри LineArlayout (ширина и высота = fill_parent). Класс в основном использует обработчик, который призывает себя для прокрутки на данную сумму. Я упростил код, чтобы показать только текстовое представление, которое должно прокручивать на 5 пикселей каждую секунду. < /P>
Положение Scrollx. < /p>
Если я не вызову requestLayout () < /code>, ничего не нарисовано. Invalidate () < /code> не имеет эффекта. < /p>
У кого -нибудь есть подсказка? < /p>
public class AutoScrollTextView extends TextView {
public AutoScrollTextView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
setSingleLine();
setEllipsize(null);
setText("Single-line text view that scrolls automatically if the text is too long to fit in the widget");
}
// begin to scroll the text from the original position
public void startScrolling() {
scrollHandler.sendEmptyMessage(0);
}
private Handler scrollHandler = new Handler() {
private static final int REFRESH_INTERVAL = 1000;
public void handleMessage(Message msg) {
scrollBy(5, 0);
requestLayout();
Log.debug("Scrolled to " + getScrollX() + " px");
sendEmptyMessageDelayed(0, REFRESH_INTERVAL);
}
};
}
Подробнее здесь: https://stackoverflow.com/questions/547 ... g-textview
Android Automatic Horizontally Scrolling TextView ⇐ Android
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение