-(void)displayActionSheet:(id)sender
{
actionSheet = [[UIActionSheet alloc]
initWithTitle:nil
delegate:nil
cancelButtonTitle:@"Cancel"
destructiveButtonTitle:nil
otherButtonTitles:@"Devanagari", @"English", nil];
actionSheet.actionSheetStyle = UIActionSheetStyleBlackOpaque;
[actionSheet showInView:self.view ];
[actionSheet release];
}
-(void)ActionSheet:(UIActionSheet *)ActionSheet clickedButtonAtIndex:(NSInteger)buttonIndex {
if(actionSheet == actionSheet)
{
switch (buttonIndex) {
case 0:{
//Devanagari view display
ButtonViewController *controller1 = [[ButtonViewController alloc]init];
controller1.delegate = self;
UINavigationController *navigationController = [[UINavigationController alloc]
initWithRootViewController:controller1];
navigationController.navigationBar.tintColor = [UIColor colorWithHue:2.0/12 saturation:2.0 brightness:4.0/10 alpha:1.0];
[self presentModalViewController:navigationController animated:YES];
[navigationController release];
break;
}
}
}
}
をロードしていないが、それは単に新しいビューをロードせずにUIActionSheet
を解雇されます。
ここで何か間違っていますか?UIActionSheetボタンは、新しいビュー
が追加されましたactionSheet.delegate = self;それでもまだビューを表示していないのですが、それでもデリゲートを変更しました:セルフinit – user1120133
デリゲートメソッドは ' - (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex :(NSInteger)buttonIndex'です。メソッドが呼び出されているかどうかを確認します。 – FluffulousChimp
このメソッドが呼び出されていないようです。私はmainviewcontrollerのdisplayActionSheetメソッドのすぐ下にこのメソッドを定義しました – user1120133