ここARCの下での正しいアプローチを知りたいです。
コントローラー内に強力な NSArray (独自のカスタム クラス オブジェクト) @property があり、別のコントローラーを初期化するときに、これらの配列から弱い別のコントローラーのポインターに NSString を 1 つだけ渡す必要があります。しかし、これをソートする必要があるため、これは好きではありません
メインコントローラーで
_leftPanelViewController.repotLabels = [[self.availableDashBoards sortedArrayUsingDescriptors:@[sortByReportLabel]]];
そして、もう一方のコントローラーには
@property(nonatomic, strong)NSArray *repotLabels;
1)私が理解したように、最初は別のウィークポインターに割り当てるウィークポインターを返すので、mainController のコードが範囲外になると、reportLabel は「nil」になりますか?
2) reportLabels プロパティ (strong) を作成すると、問題は解決しますが、他のアプローチはありますか? 最後にこの「コピー」のようなこともするべきですか?
_leftPanelViewController.repotLabels = [[self.availableDashBoards sortedArrayUsingDescriptors:@[sortByReportLabel]]copy];