UIAlertView
アカウント内のファイルへのアクセスを許可する次のモーダル ビューが表示される前に、ユーザー名とパスワードの資格情報を入力するために を使用しています。
ただし、デバッグすると、alertView が表示される前にモーダル ビューの「ViewDidLoad」メソッドが呼び出されるため、ビューがユーザー名とパスワードを取得できないため、プログラムがクラッシュすることがわかりました。
ここにコードがあります
-(IBAction) openShareFile:(id)sender
{
if (!self.shareFileBrowser) {
self.shareFileBrowser=[[ShareFileBrowserViewController alloc] initWithNibName:@"ShareFileBrowserViewController" bundle:nil];
self.alertView = [[UIAlertView alloc] initWithTitle:@"Verify your Credentials" message:@"Enter Username & Password" delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:@"OK", nil];
self.alertView.alertViewStyle = UIAlertViewStyleLoginAndPasswordInput;
[self.alertView show];
self.shareFileBrowser.domain=@"fidomoose";
self.shareFileBrowser.delegate=self;
self.shareFileBrowser.title=@"ShareFile Browser";
self.navController= [[UINavigationController alloc] initWithRootViewController:self.shareFileBrowser];
if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad) {
self.popController = [[UIPopoverController alloc] initWithContentViewController:self.navController];
}
}
if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad) {
if ([self.popController isPopoverVisible]) {
[self.popController dismissPopoverAnimated:YES];
} else {
[self.popController presentPopoverFromBarButtonItem:sender permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
}
}
else {
[self presentModalViewController:self.navController animated:YES];
}
}