今天看了一个 IOS 的应用,发现有些效果挺炫的,想模仿下,求指导啊

2015-09-09 14:09:42 +08:00
 iamjjh

登录后第一个界面,首页导航栏是透明的,随着 view 上滑, View 中的一个按钮也移动到导航栏上,导航栏也变得不透明了,请问这个是如何实现的,主要是按钮也随着移动而缩小,最后到导航栏上。
http://ww3.sinaimg.cn/large/721c0e13jw1evw6516sccg20hs0vkb29.gif

第二个就是向下滑动的时候,出现的图片依次缩小再放大,如果滑动快有这个效果,慢慢划动无此效果,请问这个又是如何实现的,求指导啊
http://ww1.sinaimg.cn/large/721c0e13jw1evw65iaog4g20hs0vk4nc.gif

6854 次点击
所在节点    iDev
50 条回复
iamjjh
2015-09-11 09:33:02 +08:00
@iOSSer 导航栏的透明度变化不会导致导航栏上面按钮的透明度也变化吗
CareiOS
2015-09-11 13:03:21 +08:00
@iamjjh 他的思路是,将头像那个 UIImageView 放到 UIWindow 上,而 UINavigationController 的 view 与 UIImageView 是兄弟关系。 所以不会相互影响。
iamjjh
2015-09-11 13:05:21 +08:00
@CareiOS 我给的 gif 图导航栏上还有两个图标啊
CareiOS
2015-09-11 13:22:26 +08:00
@iamjjh 这儿有一个开源的两个图标不会影响。 你可以看看 https://github.com/ondev/LTNavigationBar
iamjjh
2015-09-11 13:35:05 +08:00
@CareiOS 十分感谢~~
Elethom
2015-09-11 17:50:32 +08:00
@ianisme
整個思路就是錯的,更別提語言層面上還犯了很多非常低級的錯誤。
ianisme
2015-09-11 22:47:48 +08:00
@Elethom 关于语言层面的错误,希望您多多指教,我想知道是哪里有问题?
谢谢!
Elethom
2015-09-12 11:53:46 +08:00
@ianisme

比如說 scroll view 用了 strong 而不是 weak 之類的,具體沒怎麼看。

思路上的主要問題有兩個。第一是 navigation bar 不應該隱藏,而是應該設置成透明並且自己做一個全局的 background 來代替,這樣就不會影響到和 navigation bar 相關的 transitions ;第二是 header 本身的參數,你這個樣子遇到一個特殊一點的 frame 就不行了,包括收到電話、後台導航等情況 status bar 的 frame 變化,以及屏幕旋轉,或者是在一個 container 內 frame 發生改變的時候,都會跪。另外我很喜歡做類似設計,但自己很不樂意寫的另一個原因,就是 iOS 7 和 iOS 8 對多個 affine transform 疊加的處理有時是不同的,要判斷版本,很煩。

說直接了可能不太好聽,不過你的代碼值得參考的地方都基本沒有。就這樣。
Elethom
2015-09-12 11:54:10 +08:00
@ianisme
喔對,還有版本控制,你真的應該回去補一下基礎。
ianisme
2015-09-12 16:13:02 +08:00
@Elethom 受教了, 3Q

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/219363

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX