【NGUI】适配总结

1.分辨率的选择。

这次项目制作主称选择 640 * 960作为蓝本来做。但是实际过程中发现不少问题。由于iphone6马上就要上市了,在窄屏的1080 * 1920上发现UI会有很多的空白地方,感觉十分零散。但是在宽屏的768*1024的屏幕上,空间严重挤压虽然没有出现重叠,但使人很压抑。 最后解决方法以1080 * 1920屏幕做蓝本。其他分辨率全部下压,再以 NGUI新加的Anchors分区分块总算是总体过得去了。

2.Anchors的使用

在制作一个拥有ScrollView界面中,发现panel的大小死活不合作。最后发现新NGUI Widget添加Anchors。可以使部件的Size属性依赖于四周的UI变动而变动。

panel的大小总算是解决了。Grid使用Anchro定位和等比缩放,BackGround使用拉伸,总体效果不错。但是不得不说麻烦不断,Anchor定位Grid时发现第一次运行位置怎么也不对,各种调试,各种发布手机实测,都没有发现问题。后来运行后,再小画面,居然自动好了。晕,居然是Anchor组件的 RunOnlyOnce的问题,游戏第一次运行时,由于运行先后的问题导致Anchor一次不可能到真正想要的位置,所有导致首次偏差的问题。最后解决 协同手动关掉。呼。总算是弄完了。

3.ScrollView与缓存的问题

目前NGUI提供两种现有实现滑动条的方法

1.使用panel加上shader实现显示面板剪裁达到显示效果,加上ScrollView以及panel可以对固定Item达到一定的可控性.我在使用中,以固定Item(20个)为基准,使用IsVisible判断Item是否显示在Panel面板里面.以此实现Item交替实现缓存效果.

缺点

1. 滑动没有一滑到底的效果,原因ScrollView->Drag Effect会有反弹效果导致 Item没有实现交替就触发回弹效果.

解决 mScrollView.restrictWithinPanel改变触发开关 , 实际效果还是没有达到一滑到底.但是可以接受.