簡體   English   中英

接口構建器不再為IBOutlets生成ARC兼容代碼

[英]Interface builder no longer generate ARC compliant code for IBOutlets

我正在使用XCode 4.3.2實現我的第一個iOS 5.1應用程序,並且正在嘗試一種奇怪的XCode接口構建器行為。

我在界面生成器中使用NIB文件創建了一個ViewController,並且在將任何UI對象連接到ViewController .h以便創建IBOutlet屬性時,用於設置插座屬性的對話框窗口都不會顯示“存儲”字段。

為了清楚起見,界面構建器顯示以下對話框:

屏幕截圖1

而不是這個:

屏幕截圖2

因此,接口構建器生成的代碼如下所示:

@property (unsafe_unretained, nonatomic) IBOutlet UILabel *labelName;

而我期望的代碼是:

@property (weak, nonatomic) IBOutlet UILabel *labelName;

這種行為從幾天開始就只針對一個項目而發生,所以我懷疑我不小心更改了某些項目設置。

是否有任何還原XCode Interface Builder行為以生成ARC代碼的幫助?

提前致謝。

我敢打賭,您的目標是4.x,對嗎? 在那種情況下,您不能使用弱函數,因此它使用unsafe_unretained。 它們是同一件事,只是unsafe_unretained不會自動為您設置指針,但是這對您的用例而言並不重要。

您可能在項目/目標設置上關閉了ARC 切換到“ Yes ,您將返回“ Storage字段。

在此處輸入圖片說明

暫無
暫無

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

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