首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

兑现ScrollView的嵌套

2013-01-08 
实现ScrollView的嵌套今天忽然需要写两个ScrollView嵌套,如:?ScrollView? ? ……? ? ScrollView? ? ……?

实现ScrollView的嵌套

今天忽然需要写两个ScrollView嵌套,如:

?

<ScrollView>
? ? ……
? ? <ScrollView>
? ? ……
? ? </ScrollView>
? ? ……
</ScrollView>

但是这样会用问题,只有最外层的ScrollView有效。

?

有研究了一下,发现了下面这种解决方法:

?

ScrollView sv01 = (ScrollView) findViewById(R.id.scroll_01); ScrollView sv02 = (ScrollView) findViewById(R.id.scroll_02); sv02.setOnTouchListener(new OnTouchListener() {         @Override         public boolean onTouch(View v, MotionEvent event) {             if (event.getAction() == MotionEvent.ACTION_UP)                 sv01.requestDisallowInterceptTouchEvent(false);         else                  sv01.requestDisallowInterceptTouchEvent(true);         return false;         }     }); 

?

?

这样重写onTouch()事件,在事件里通过requestDisallowInterceptTouchEvent(boolean)方法来设置父类的不可用,true表示父类的不可用。这样就可以实现两个ScrollView分别滑动。

?

并且这样也适用于:ScrollView里面嵌套ViewPage等控件。

也适用于ScrollView里面嵌套多个滑动的控件,具体实现基本一致,可以自己研究一下。

热点排行