比方說,我有一個場景(推動視圖控制器與導航欄),它在表格視圖中顯示一些表格數據。 在該場景的導航欄中,我有一個+符號,它應該打開一個新場景,用戶可以在其中添加一個新項目(行到核心數據表)。 在表格視圖中,每行在每個單元格的右側都有一個箭頭,這會打開一個場景,用戶可以編輯該特定項目的詳細信息。 我應該使用push還是modeal segue作爲+? 我應該使用推式還是莫代爾式箭頭? 什麼是「最佳實踐」? 我明白push和modal segues之間的區別,但我想知道哪個更適合上述用例。使用案例推與模態賽段?
11
A
回答
13
如果你想效仿蘋果的最佳做法,我建議如下:
從「添加」功能,使用模式 SEGUE。
例如查看聯繫人應用程序。按+顯示一個模態視圖控制器。
什麼是邏輯?首先,模態視圖控制器通常有一個「取消」按鈕,而不是一個推動的vc上的「後退」按鈕。
當用戶按下「返回」 - 他希望有辦法回到vc。通常「後退」將您的數據保存在iOS上(自動保存)。
因此,通過使用模態segue,您可以強制用戶提交表單或取消。模態演示提示您真的需要填寫此屏幕。用於編輯 - 推送。但模式也可以工作(並且可以重複使用相同的VC)。
原因推動:- 你獲得VC的層次結構,不斷來回,而下鑽。
- 回去的時候(就像其他iOS應用)
0
增加一個新的實體,以核心數據表,上輕擊+按鈕(你應該實現)自動保存(我假設它的一個導航欄上的右側欄欄按鈕項目),請使用模態輪廓。 用於添加新行的視圖必須以模態方式呈現,一旦保存完成,請關閉模式視圖並重新加載表視圖以顯示新添加的項目。
也用於顯示實體行的詳細信息,請使用push segue。當用戶選擇一個表格單元時,用戶期望推動動作,並且這是實現這一點的理想方式。
1
我希望這個快速總結能夠幫助您: 當您想要顯示摘要視圖的詳細視圖時,請使用導航控制器和Push Segues。如果「父」視圖與數據與「子」視圖無關,則使用模式。模態視圖的一個很好的例子是任何入口視圖。這個視圖並沒有任何關係,只要數據涉及到「父」視圖,輸入屏幕將只取用戶數據dat將會保存&可以走開&將控制權交給父母
相關問題
- 1. 如何設置模態賽格動畫與推動賽格動畫相同?
- 2. 動態鏈接與淘汰賽模板
- 3. 將默認案例與其他案例結合使用
- 4. 是否將字段分配推遲爲競賽狀態?
- 5. 單案例 - 動態使用modrewrite在htacess
- 6. 如何找出使用模式賽格瑞而不是推賽格瑞
- 7. .change()與案例
- 8. 案例與空
- 9. 賽格瑞不工作作爲推動,只能作爲模態
- 10. 使用空與PHP SESSION - 0案例
- 11. Oracle - 使用案例聲明與計數
- 12. constexpr的使用案例與定義
- 13. 擴展與基本使用案例
- 14. 與好友討論使用案例
- 15. VB.NET使用VbStrConv.ProperCase與多案例名稱?
- 16. 模式與奇偶案例匹配
- 17. 「的MKMapView」 /「showsUserLocation =真」,使得與模態賽格瑞
- 18. 推賽格瑞
- 19. 使用ko.mapping的淘汰賽更新模型與計算字段不起作用
- 20. ReentrantLock使用案例
- 21. memcached使用案例
- 22. Minimongo使用案例
- 23. Linq使用案例
- 24. FacesConverter使用案例
- 25. 使用案例Artifact.getBaseVersion()
- 26. @EnableZuulServer使用案例
- 27. mmap使用案例
- 28. 案例與一列
- 29. SQL AVG與案例
- 30. 使用靜態const類實例開關/案例