私の iPad アプリでUITableViewは、ポップオーバーに表示される があります。表示したい値が複数あるためUITableViewCell、テーブル内の多くの「列」をシミュレートするために、いくつかのラベルを使用してカスタムを作成しました。私がやりたいことは、すべての「列」が並んでいることを確認することです。
問題は、XML Web サービスからデータを動的に入力しているため、列の幅をハードコーディングできないことです。そのため、その呼び出しを行ってデータを受け取るまで、必要な幅がわかりません。 .
私の考えは、データを(取得したら)ループし、のsizeWithAttributs:方法を使用しNSStringて各列の最大幅を取得することです。次に、その幅をカスタム セルに送信して、セルがlayoutSubviewsメソッドで使用できるようにします。問題は、私がこれをすべて でやろうとしていることです。NSLayoutConstraints私が見たすべての例では、任意のサイズconstraintsWithVisualFormat:が常にハードコードされています.実行時まで自分のサイズがわかりません. 私の考えは、次のようなことをすることです
NSDictionary *myDictionary = NSDictionaryOfVariableBindings(myLabel1,myLabel2)
NSArray *myConstraints = [NSLayoutConstraint constraintsWithVisualFormat:@"H:|-[myLabel1(%d)]-[myLabel2(%d)]",myWidth1,myWidth2 options:NSLayoutFormatAlignAllBaseline metrics:nil views:myDictionary];
しかし、これによりビルドエラーが発生します。constraintsWithVisualFormatハードコーディングする代わりに、実行時にサイズを動的に提供することは可能ですか?