-(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;
}
}
}
}
Devanagari 단추를 누르면 새로운보기가로드되지만 새보기를로드하지 않고 단순히 UIActionSheet
을 닫을뿐입니다.
내가 여기서 잘못하고 있니?UIActionSheet 단추가 새보기를로드하지 않습니다.
추가됨 actionSheet.delegate = self; 여전히 뷰를 표시하지 않습니다. 위임자 메소드는 init()에서 호출합니다. – user1120133
위임 메소드는'- (void) actionSheet : (UIActionSheet *) actionSheet clickedButtonAtIndex : (NSInteger) buttonIndex' 그런 다음 그 메소드가 호출되는지 여부를 확인하기 위해? – FluffulousChimp
이 메소드가 호출되지 않는 것 같습니다. mainviewcontroller의 displayActionSheet 메소드 바로 아래에이 메소드를 정의했습니다. – user1120133