listview首例不动其他可以横向滑动
下载地址:http://download.csdn.net/detail/menglele1314/8640023
自定义HorizontalScrollView
public class CHScrollView extends HorizontalScrollView {
MainActivity activity;
public CHScrollView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
activity = (MainActivity) context;
}
public CHScrollView(Context context, AttributeSet attrs) {
super(context, attrs);
activity = (MainActivity) context;
}
public CHScrollView(Context context) {
super(context);
activity = (MainActivity) context;
}
@Override
public boolean onTouchEvent(MotionEvent ev) {
//进行触摸赋值
activity.mTouchView = this;
return super.onTouchEvent(ev);
}
@Override
protected void onScrollChanged(int l, int t, int oldl, int oldt) {
//当当前的CHSCrollView被触摸时,滑动其它
if(activity.mTouchView == this) {
activity.onScrollChanged(l, t, oldl, oldt);
}else{
super.onScrollChanged(l, t, oldl, oldt);
}
}
}
/**
*
* 带滑动表头与固定列的ListView
*/
public class MainActivity extends Activity {
private ListView mListView;
// 方便测试,直接写的public
public HorizontalScrollView mTouchView;
// 装入所有的HScrollView
private List<CHScrollView> mHScrollViews = new ArrayList<CHScrollView>();
private ImageView leftOk,rightOk,leftNo,rightNo;
private GridView gridView;
private List<Book> datas = new ArrayList<Book>();
private List<String> name;
public HorizontalScrollView gTouchView;
// 装入所有的HScrollView
private List<GHScrollView> gHScrollViews = new ArrayList<GHScrollView>();
private ImageView leftView;
private ImageView rightView;
@Override
protected void onCreate(Bundle savedInstanceState) {