ITunesストアにUILabel
にUIWebView
とUIAlertView
を表示するアプリケーションがあります。セッションビデオによると、addSubView
のUIAlertView
は機能しません。彼らはContentView
について話しました。しかし、GM Seeds SDK)では、そのプロパティを見つけることができず、他の方法はないようです。
できることは、UIView
のカスタムサブクラスを作成し、UIAertView
のように動作させることだけです。他の簡単な解決策を提案できますか?
助けてくれてありがとう。
IOS7ではaccessoryViewをcustomContentViewに実際に変更できます(iOS8でも同様です)UIAlertView
[alertView setValue:customContentView forKey:@"accessoryView"];
このコードを試してください:
UIAlertView *av = [[UIAlertView alloc] initWithTitle:@"TEST" message:@"subview" delegate:nil cancelButtonTitle:@"NO" otherButtonTitles:@"YES", nil];
UIView *v = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 80, 40)];
[av setValue:v forKey:@"accessoryView"];
v.backgroundColor = [UIColor yellowColor];
[av show];
呼び出しの前にカスタムaccessoryViewを設定する必要があることに注意してください[alertView show]
AddSubviewはiOS 7では使用できません。
唯一の方法は、UIAlertViewとして機能できるカスタムUIViewサブクラスを作成することです。 Githubでいくつかのコンポーネントを見つけることができました。
リンクされたもの カスタムアラート はうまく機能しているようです。適切なバージョンチェックを行うことにより、ネイティブUIAlertViewまたはCustomAlertViewを選択できます。
UIAlertView
にサブビューを追加することは、iOS7で以前のiOSバージョンと異なります。次のようなものを試してください:
if (floor(NSFoundationVersionNumber) > NSFoundationVersionNumber_iOS_6_1) {
[myAlertView setValue:myCustomView forKey:@"accessoryView"]; //works only in iOS7
} else {
myAlertView.message = @"\n"; //or just add \n to the end of the message (it's a workaround to create space inside the alert view
[myAlertView addSubview:myCustomView];
}
[myAlertView show]; //show the alert AFTER CUSTOMIZATION