解决方案 »
- cocos2d-x 2.0 iconv.h问题
- 空气质量
- android 在activity中绑定一个服务失败
- andriod模拟器问题,急急急急急
- android 如何将图片转换成Byte[]数组
- Android 为拨号盘定制DTMF的问题
- 怎么从一个Activity转入一个ListActivity????
- 关于android中AsyncTask和jni技术简单应用--附源码
- 如何开始android学习?
- 一个竖屏跳转到另一个透明主题横屏(使用andengine),延迟切换成竖屏!
- ExpandableListView的下拉收起图标无法对齐
- myListActivity 和 myListAdapter 的控件传值问题。
单纯的scrollBy应该还不能满足我的需求,在GridLayout里面我是两行x两列(四个)派生控件,某一时刻,只能拖动其中一个,总共有好几个GridLayout并列布局的而按照我的理解,scroll类似的函数应该都是要视图实际大小超出显示区域才能滚动?而我的派生控件在GridLayout里面是完全显示了的
看了你这句话,我再去看代码的时候,发现我这个问题提得就不对,没错综问题的本质,也是由于时间久了,有些代码淡忘了,所以原来,我两行两列的时候是把4个子控件放在GridLayout里面,然后在将GraiLayout放入派生的ViewGroup里面,所以他的触控事件应该是受GridLayout来控制~~~然后当我切换成单视图的时候(只有一个派生控件),我不再使用GridLayout,直接把派生控件放到了派生的ViewGroup里面,所以这个时候子控件的触控事件应该是由派生的ViewGroup来控制的,问题就在这儿,派生的ViewGroup里面重写了onInterceptTouchEvent 和 onTouchEvent,所以应该是这个地方有问题,我再理一理
事实证明,确实是onLayout里面处理得有问题,现在我把onLayout函数在拖动的时候直接返回掉,不做子控件的Layout处理,就行了。以前的android版本居然可以用,让我一直误以为是GridLayout的版本兼容性问题可能是Android4.4及以后对onLayout的处理方式有改变
谢谢各位了~共勉