-2

Nib ファイル内のすべてのビューを取得するにはどうすればよいですか? 私は内のすべてのビューを取得しようとしていますNib:

   let objects = Bundle.main.loadNibNamed("ViewName", owner: self, options: nil)?[0]  as! NSArray
   let mainView : UIView = objects[0] as! UIView

このエラーが発生していますが:

タイプ 'UIView' (0x108080b40) の値を 'NSArray' (0x105173c58) にキャストできませんでした。

よろしくお願いします。

4

1 に答える 1

2

loadNibNamed型の配列を返します。これは、配列の最初のオブジェクトにアクセスしていること[Any]?を意味します。[0]削除するだけ[0]です。

let objects = Bundle.main.loadNibNamed("ViewName", owner: self, options: nil)

UIViewオブジェクトを直接初期化できる2番目のオプション。

if let mainView : UIView = Bundle.main.loadNibNamed("ViewName", owner: self, options: nil)?[0] as? UIView {...}

エラーを解決する解決策を選択してください。

于 2016-10-07T07:22:52.657 に答える