我正在iOS上構建即時通訊應用程序。具體來說,我正在以最典型的方式實現對話的UI,即在視圖底部放置一個輸入欄(UICollectionView
清晰),並在鍵盤上方滾動。 現在,我想知道是否應該將此視圖作爲UIToolbar
與UIBarButtonItem
s而不是自定義UIView
與UIButton
s。 UIToolbar
有什麼優點?爲什麼要使用UIToolbar和使用UIView?
2
A
回答
5
我不認爲除了方便之外還有很多不同之處。隨着UIToolbar你會得到如下:
UIBarButton項目,可以說是簡單的添加到工具欄和 佈局是自動的,而這是一個比較複雜一點加入 按鈕的視圖。
可以設置在視圖控制器
hidesBottomBarWhenPushed
到
隱藏條時的視圖控制器被推到NAV堆棧。看起來更熟悉其他應用程序,包括蘋果自己的應用程序。
如果你用你所擁有的外觀更具靈活性按鈕,一個UIView,但你必須做更多的工作,但除此之外,我實在看不出太大的區別。
2
UIToolbar將提供您的按鈕的自動放置,使您免於放置這些按鈕的痛苦。它是專門爲此設計的。
相關問題
- 1. 使用UIToolbar調整UIView不要同時調整大小
- 2. 爲什麼要使用DataSet.BeginInit和DataSet.EndInit
- 3. 爲什麼要使用Windows.Forms.Timer?
- 4. 爲什麼要使用Mockito?
- 5. 爲什麼要使用Django?
- 6. 爲什麼要使用DataTemplate.DataType
- 7. 爲什麼要使用PortletURL?
- 8. 爲什麼要使用Querydsl?
- 9. 爲什麼要使用CAssetManager?
- 10. 爲什麼要使用Socket.io?
- 11. 爲什麼要使用ActionbarSherlock?
- 12. 爲什麼要使用CC_BREAK_IF?
- 13. 爲什麼要使用File.join()?
- 14. 爲什麼要使用fluentmigrator?
- 15. 爲什麼要使用Asprintf?
- 16. 爲什麼要使用DialogFragment?
- 17. 爲什麼要使用restartLoader()?
- 18. 爲什麼要使用Dispatcher.BeginInvoke?
- 19. 爲什麼要使用jsp:forward
- 20. 爲什麼要使用Uploadify?
- 21. 爲什麼要使用Hashtable.Synchronized?
- 22. 爲什麼要使用scala.collection.immutable.Stack
- 23. 爲什麼要使用addscalar?
- 24. 爲什麼要使用-T使用ssh
- 25. 爲什麼要使用websocket,使用它有什麼好處?
- 26. 爲什麼我需要使用strtotime()來使用date()和mysql
- 27. 爲什麼在使用ES6和ReactJS時需要使用綁定?
- 28. 爲什麼我的UIToolBar使用我的UITableView滾動?
- 29. 爲什麼我需要Iterator接口,爲什麼要使用它?
- 30. 什麼時候和爲什麼要使用戰略模式?