废话不多说,直接贴代码,第一次发博客,贴个自己原创的简单自定义控件!
public class NongJiYuanScrollView extends ScrollView {
public NongJiYuanScrollView(Context context, AttributeSet attrs,
int defStyle) {
super(context, attrs, defStyle);
init();
}
public NongJiYuanScrollView(Context context, AttributeSet attrs) {
super(context, attrs);
init();
}
public NongJiYuanScrollView(Context context) {
super(context);
init();
}
private Timer timer;
private void init() {
timer = new Timer();
timer.schedule(timeTask, 1000,100);
}
private TimerTask timeTask = new TimerTask() {
@Override
public void run() {
int S = computeVerticalScrollRange()/2+getMeasuredHeight() ;
int A = getScrollY() + getHeight() ;
if (S - A <= 3)
scrollTo(0, 0);
smoothScrollBy(0, 2);
}
};
}
大家都知道如果要让一个布局使用户感觉到是无限的,就需要完全相同的两遍数据,
我们需要这个控件也得在子布局里面添加两遍一样的数据,我推荐使用new 的方法动态加载进去。子布局的监听方法也可以直接在子布局上绑定!
然后就可以看到很炫的自动无限滚动啦。
横向滚动 等我有时间在发上来!