您的位置:首页 > 产品设计 > UI/UE

做开发,也要多一些UI设计上的思考

2016-07-01 13:46 246 查看
       我是一个iOS开发,最近在做证券类的app。此软件在炒股类app中,app
store 搜索,位居第一。软件版本更新快,功能巨多,目前的需求主要是对旧有界面升级。

      我最近接受的任务,是对有声内参的升级。在需求上写着,界面效果,同之前。

      先来说一下之前的界面效果:界面分为两部分,第一部分,我称为头部,功能是播放录音,有相应的录音播放UI,此部分不支持上下和左右滑动。第二部分是列表部分,一共两个列表。即可对单个列表上下滑动,又可左右滑动切换两个列表。对单个列表位移为0,头部没有处于顶部时,感知用户向上滑动瞬间,头部分立刻向上滑吸顶;当单个列表位移为0,头部处于顶部时,当感知用户向下滑动瞬间,头部立刻向下滑动,恢复至原始状态。

       我个人对,当感知用户滑动,头部立刻上滑吸顶,及下滑至原始状态,立刻响应的行为,觉得用户感突兀。头部滑动快,会觉得眼前东西,嗖的一下,视觉不舒服。头部滑动慢,会跟不上列表的滑动,觉得不配套。受网易新闻app中话题栏界面效果的启发。我觉得,可以让列表的滑动和头部的滑动保持一致。当列表滑动触发头部联动,头部相对列表是静止的。即根据列表的位移来移动头部。用户体验的手感,提升n倍。好的不得了哈。见图解分析:


       我向直接的leader提出了自己的想法,并得到支持,肯定修改后的效果。我于是花费了两天时间来搞。

       我觉得,修改后的方案,技术点难点有两个。第一个是,上滑动列表时,列表的内容没有折叠到tabbar下面,直到tabbar吸顶后,列表内容才折叠到tabbar下面。第二个是,头部和tabbar上滑或下滑过程中(在位置的最大值和最小值之间),列表一和列表二切换后的UI正常,且可继续的让头部和tabbar上滑或下滑。

       搞的过程中,遇到了一个异常现象。第一个是,创建vc时,勾选了xib文件,并由功能需要继承了基类,基类中navigationbar是自定义的view add上的。我在xib通过拉控件加约束来创建头部和tabbar栏。用代码创建UIPageViewController来加载列表一vc,列表二vc。在把UIPageViewController的view add到self.view上。在列表的scrollDidScroll方法中,捕获列表的位移,改变头部的顶部约束实现联动效果。会发现,即使设置navigationbar的自定义view
放在self.view的最上面,头部放在self.view的最下面。依然后出现联动时,头部盖着navigationbar上滑。原因我分析是,修改头部的顶部约束时,会设置约束的优先级为high,可能跟优先级有关。解决办法是,删除xib文件,用纯coder写界面。第二个是,xib文件右边栏size属性设置为Freeform,默认的size 为600x600的正方形,在对应的vc类中,self.view.bounds.size.width和hight均为600.而[UIScreen mainScreen].bounds.size.width和height是屏幕的宽和高。如果用代码来像vc的view(由xib获得)上添加控件,且设置位置时用的是frame属性,那么,就要用self.view.bounds.size.width和hight为size的基准来设置,不要以[UIScreen
mainScreen].bounds.size.width和height为size的基准来设置。

       待效果写好后,拿着给负责人看,被拒。原因是产品没有说让改,就不能改。而我们开发,是不能和产品沟通的。我视我的如此设计如宝,却不被认同,无奈,改为之前方案。

       自我觉得,好的诉求却被拒,虽然感觉有点惋惜,但是,我确确实实按照我的设计,通过克服技术难点,搞出来了。满满的收获,也是值得的。我并不会因为被拒而放弃自我对的认知,虽是开发,我觉得,有责任和义务,让app变得更优美,更流畅。通过我个人经历讲述,如果你也是一位开发,正好看到我的文章,也接触的某个某块设计有自己好的看法,那就和我一样,提一下,正所谓,广开言路,是正道哈。你我共同加油吧。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: