欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

Android 将两个 HorizontalScrollView 连接起来

最编程 2024-04-21 21:22:18
...


有这样一个需求,需要当其中一个HorizontalScrollView滚动的时候另一个HorizontalScrollView也跟着滚动,所以才有了这个类:

package com.ql.view;

import android.content.Context;
import android.util.AttributeSet;
import android.view.View;
import android.widget.HorizontalScrollView;

public class SyncHorizontalScrollView extends HorizontalScrollView{
	private View mView;
	public SyncHorizontalScrollView(Context context) {
		super(context);
		// TODO Auto-generated constructor stub
	}
	public SyncHorizontalScrollView(Context context, AttributeSet attrs) {
		super(context, attrs);
		// TODO Auto-generated constructor stub
	}

	protected void onScrollChanged(int l, int t, int oldl, int oldt) {  
        super.onScrollChanged(l, t, oldl, oldt);  
        if(mView!=null){
            mView.scrollTo(l, t);
        }  
    }

	public void setScrollView(View view){
        mView = view;  
    }

}



用法:


scrollView0=(SyncHorizontalScrollView)findViewById(R.id.scrollView0); 

scrollView1=(SyncHorizontalScrollView)findViewById(R.id.scrollView1); 

scrollView0.setScrollView(scrollView1); 

scrollView1.setScrollView(scrollView0);


这样其中一个滚动时另一个也跟着滚动了。


水平滚动解决了,那竖直滚动的ScrollView也类似的写法。


推荐阅读