cocostudio学习之有关UIScrollView控件的一个问题
2013-07-22 16:05
274 查看
我现在有一个场景,使用UI编辑器创建而成,其中包含三个UIScrollView控件。第一个UIScrollView控件中包含大约12个子控件 UIImageView,第二个UIScrollView控件中包含大约16个子控件UIImageView,第三个UIScrollView控件中包含 大约32个子控件UIImageView。上述每一个UIScrollView控件内部的子控件UIImageView根据需要进行覆盖显示。对于前面两 个内容较少的UIScrollView控件,操作正常。对于第三个UIScrollView控件则显示不正常。我左右拖动其中的子控件时出现显示乱套现 象。例如,我使用如下代码:
我感觉上述思路没有什么不正常的。另外,在图片相应的点击事件中,除了显示上述方框图片控件外还有其他的代码需要执行(暂时被我屏蔽了)。
执行上述代码,对于两个内容少的UIScrollView控件一切正常,但对于最后一个内容较多的UIScrollView控件,即显示乱套矣!
对于问题http://bbs.cocostudio.org/forum. ... 6509&extra=page%3D1,似乎pipu先生也没有给予更多更细致的解释。
特别请教上述问题,谢谢了。
回答:
问题是这样的 目前scrollview有个缺陷 如果是子控件添加进scrollview后 又对子控件的position进行了操作 就会导致scrollview滚动不正常问题,因为scrollview在addchild时会根据子节点的位置信息做一些scrollview属性的处理,这个问题后面会优化 目前的使用方式建议是在scrollview addchild之前设置好子节点的位置 add完毕后就不要对子节点的位置进行操作了。
谢谢!但是,我的scrollview中有N幅图片,想实现玩家点击一幅图片时,上面盖一个“框”,那么这个框对应的image控件目前只好先放到整个scrollview控件的外面(上面),是不是?
最好就是“框”是个imageview 图片是个imageview 两个imageview添加到一个panel中 框先设置为不可见 把这个panel当作scrollview中的单元子几点放到scrollview中
点击图片的时候把框显示出来。
或者,您是不是说,只要不修改内部控件的位置,把其中IMAGE控件的某些其他属性修改一个(目的是为了显式指出玩家选择的是它),这样是可以的?
是的 除了位置属性 其他所有属性都可以设置 visible scale rotation等
非常感谢!我试试!
UIImageView* currentDesk = dynamic_cast<UIImageView*>(pObject); UIScrollView* scroll_3 = dynamic_cast<UIScrollView*>(currentDesk->getWidgetParent()); UIImageView* desk_mask = dynamic_cast<UIImageView*>(scroll_3->getChildByName("desk_mask")); CCPoint pos=currentDesk->getPosition(); desk_mask->setPosition(pos);实现:当点击其中某一幅图片时,有一个已经添加到上述UIImageView控件中的方框图片控件(其默认位置置于第一个图片之上)会置于其上,以显示用户当前选择的是这一幅图片。
我感觉上述思路没有什么不正常的。另外,在图片相应的点击事件中,除了显示上述方框图片控件外还有其他的代码需要执行(暂时被我屏蔽了)。
执行上述代码,对于两个内容少的UIScrollView控件一切正常,但对于最后一个内容较多的UIScrollView控件,即显示乱套矣!
对于问题http://bbs.cocostudio.org/forum. ... 6509&extra=page%3D1,似乎pipu先生也没有给予更多更细致的解释。
特别请教上述问题,谢谢了。
回答:
问题是这样的 目前scrollview有个缺陷 如果是子控件添加进scrollview后 又对子控件的position进行了操作 就会导致scrollview滚动不正常问题,因为scrollview在addchild时会根据子节点的位置信息做一些scrollview属性的处理,这个问题后面会优化 目前的使用方式建议是在scrollview addchild之前设置好子节点的位置 add完毕后就不要对子节点的位置进行操作了。
谢谢!但是,我的scrollview中有N幅图片,想实现玩家点击一幅图片时,上面盖一个“框”,那么这个框对应的image控件目前只好先放到整个scrollview控件的外面(上面),是不是?
最好就是“框”是个imageview 图片是个imageview 两个imageview添加到一个panel中 框先设置为不可见 把这个panel当作scrollview中的单元子几点放到scrollview中
点击图片的时候把框显示出来。
或者,您是不是说,只要不修改内部控件的位置,把其中IMAGE控件的某些其他属性修改一个(目的是为了显式指出玩家选择的是它),这样是可以的?
是的 除了位置属性 其他所有属性都可以设置 visible scale rotation等
非常感谢!我试试!
相关文章推荐
- cocostudio学习(UIScrollView控件内部子控件的可视化问题)
- IOS控件学习之UIScrollView(2)
- 今天学习asp.net mvc的过程中出现了一点问题,是有关浏览器的,一个疑问?
- 解决UIScrollView,UIImageView等控件不能响应touch事件的问题
- Masonry UIScrollView autolayout 的一个奇特的问题
- Objective-C学习—UIScrollView控件使用
- 解决UIScrollView,UIImageView等控件不能响应touch事件的问题
- 【IOS学习之常见问题】UIScrollView 不能滑动(ScrollView has ambiguous scrollable content height)
- android学习之LayoutInflater的用法,在myAdapter getView()里将多个TextView组件压缩成一个View控件,并在listView里显示
- cocostudio学习之关于UIWidget需要add CCNode控件的问题
- 自定义view学习-手把手教你制作一个可扩展日历控件
- UIScrollView加入控件,控件距离顶部始终有间距的问题
- Android之通过VideoView控件播放一个视频出现的问题以及我的解决办法
- numberpickerView的学习使用相较于PickView也是很不错的一个控件
- C++MFC学习心得(四)——CListBox自绘控件碰到的一个小问题
- IOS控件学习之UIScrollView(4)
- 一个有关编程学习中的英语问题
- IOS控件学习之UIScrollView(1)
- IOS控件学习之UIScrollView(3)
- 学习笔记之 —— 一个textview控件搞定中间文本左右两张图