Storyboard を使用したアプリケーションがあります。ビューには AlertViewDialog があります。
ユーザーが最初のボタン (「はい」) をクリックしたときに、ストーリーボードで別のビューを開くにはどうすればよいですか?
Storyboard を使用したアプリケーションがあります。ビューには AlertViewDialog があります。
ユーザーが最初のボタン (「はい」) をクリックしたときに、ストーリーボードで別のビューを開くにはどうすればよいですか?
私はこれが助けることができます:
viewController の SecondViewController クラス (.h &.m) サブクラスを作成します。
次に、アラートビューコードから(はいをクリックしたときに言ったように)
以下のコードを貼り付けます
SecondViewController *svc =[self.storyboard instantiateViewControllerWithIdentifier:@"vinay"];
[svc setModalTransitionStyle:UIModalTransitionStyleCoverVertical];
[self presentViewController:svc animated:YES completion:nil];
問題が発生した場合はお知らせください。
これが役立つかもしれません:
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
ClassNameViewController *viewController = (ClassNameViewController *)[storyboard instantiateViewControllerWithIdentifier:@"viewIdentifierOnStoryboard"];
[self presentModalViewController:viewController animated:NO];
最初に行う必要があるのは、このように追加するようにUIAlertView
デリゲートを設定することです。UIAlertViewDelegate
@interface
@interface myClass : super <UIAlertViewDelegate>
// super could be anything like `UIViewController`, etc
@end
そして、次の@implementation
ようなものを追加できます
@implementation myClass
........... Some code
- (IBAction)someActionMethod:(id)sender
{
UIAlertView *myAlertView = [[UIAlertView alloc] initWithTitle:nil
message:@"Would you like to move on?"
delegate:self
cancelButtonTitle:@"No"
otherButtonTitles:@"Yes", nil];
[myAlertView show];
// [myAlertView release]; Only if you aren't using ARC
}
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
switch(buttonIndex) {
case 1:
SecondViewController *svc =[self.storyboard instantiateViewControllerWithIdentifier:@"secondViewController"];
[svc setModalTransitionStyle:UIModalTransitionStyleCoverVertical];
// [self presentViewController:svc animated:YES]; // Deprecated in iOS 6.0
[self presentViewController:svc animated:YES completion:nil]; // Introduced in iOS 5.0
break;
default:
break;
}
}
@end
ストーリーボードに一意の識別子を設定することを忘れないでください。あなたはこれを行うことが.storyboard
できます. それはとても簡単です。Storyboard ID
instantiateViewControllerWithIdentifier
"secondViewController"
完了したら、このビューを閉じることを忘れないでください。使用する必要があります
[self dismissModalViewControllerAnimated:YES];
上記は実際にはiOS 6.0で廃止されましたが、使用できます
[self dismissModalViewControllerAnimated:YES completion:nil];
最後に完了ブロックを追加することを除いて、同じことを行います。
お役に立てれば。