簡體   English   中英

根據目標顯示/隱藏故事板中的UI元素

[英]Show/Hide UI elements in a storyboard depending on the target

我已經閱讀了很多關於使用Xcode創建精簡和付費版本的內容,並且在我的應用程序中,我使用了多個目標和預處理器宏, 如此Stackoverflow帖子中所述 但是,我不知道如何使用Storyboard處理不同的目標。

例如,在我的故事板中,我有一個帶靜態單元格的表視圖控制器。 在付費版本中它有四個單元格,在lite版本中有一個額外的單元格,而故事板的其余部分保持不變。 有沒有辦法實現這種行為?

(為Lite版本創建一個新的故事板(或復制它)不是我的選擇,因為我有幾十個視圖控制器,98%的視圖和UI元素在兩個版本中是相同的。這將使項目難以維護。)

例如,在我的故事板中,我有一個帶靜態單元格的表視圖控制器。 在付費版本中它有四個單元格,在lite版本中有一個額外的單元格,而故事板的其余部分保持不變。 有沒有辦法實現這種行為?

如果你沒有使用靜態表來裝箱,那么首先就不會出現這個問題; 你將在代碼中配置表,這可能是有條件的 - 問題的結束。

事實上,故事板中你需要兩個不同的場景,一個用於付費版本,另一個用於精簡版本。 然后:

  • 如果segue到達了這個場景,你將需要兩個不同的段到達這個場景,你將在代碼中決定觸發哪一個(並在代碼中觸發它,而不是自動觸發)。

  • 如果此場景是初始視圖控制器,則需要最初在代碼中實例化它,而不是讓UIApplicationMain為您執行此操作。 或者,在這種情況下,只為這一個場景使用兩個不同的故事板,然后轉到另一個故事板。

(並且請記住,在任何情況下,多個故事板都是組織場景的好方法。我不一定意味着多個替代故事板;多個連續故事板可以防止故事板變得過於復雜。從你的問題聽起來對我來說好像所有你需要做的就是了解故事板是如何工作的 - 你知道它們並不神奇 - 而且你對它們的使用更加敏捷。你的整個鹿頭燈都害怕重復你的故事板 - “我有幾十個視圖控制器“ - 暗示你已經走錯了道路。編程就像解決一個魔方:如果你處於中間位置而且你對某人試圖改變某些東西的反應是”不要觸摸它!“,你做錯了。)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM