android 自定义 跑马灯 代码
时间: 2023-10-04 09:04:50 浏览: 133
Android自定义图文跑马灯效果
以下是一个简单的自定义跑马灯控件的代码:
```java
public class MarqueeTextView extends TextView {
public MarqueeTextView(Context context) {
super(context);
setSingleLine();
setEllipsize(TextUtils.TruncateAt.MARQUEE);
setMarqueeRepeatLimit(-1);
setHorizontallyScrolling(true);
setFocusable(true);
setFocusableInTouchMode(true);
}
public MarqueeTextView(Context context, AttributeSet attrs) {
super(context, attrs);
setSingleLine();
setEllipsize(TextUtils.TruncateAt.MARQUEE);
setMarqueeRepeatLimit(-1);
setHorizontallyScrolling(true);
setFocusable(true);
setFocusableInTouchMode(true);
}
public MarqueeTextView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
setSingleLine();
setEllipsize(TextUtils.TruncateAt.MARQUEE);
setMarqueeRepeatLimit(-1);
setHorizontallyScrolling(true);
setFocusable(true);
setFocusableInTouchMode(true);
}
@Override
public boolean isFocused() {
return true;
}
}
```
使用这个控件时只需要在布局中使用它即可,例如:
```xml
<com.example.MarqueeTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="This is a marquee textview example." />
```
这个控件会自动滚动文本,直到文本滚动到控件的末尾。如果想要更改滚动速度,可以使用 `setSpeed()` 方法,例如:
```java
marqueeTextView.setSpeed(10);
```
其中参数值是滚动的速度,数值越大滚动越快。
阅读全文