2011-03-11 25 views
1

我經常在iphone應用程序中看到類似底部圖片的東西,並且想知道是否有標準的方法來實現這一點。如何在iPhone UI中提供替代選項?

要清楚,它是一個視圖,覆蓋了一半的屏幕,通常用按鈕來選擇不同的選項。當我要求標準的方式,我的意思的UITableView,UIAlertView中,UIScrollView的,等等

iphone screenshot

回答

3

是的,它被稱爲UIActionSheet。這裏有一個例子:

 UIActionSheet *takeAction = [[UIActionSheet alloc] initWithTitle:@"" 
                   delegate:self 
                 cancelButtonTitle:@"Cancel" 
                destructiveButtonTitle:@"Delete" 
                 otherButtonTitles:@"New...", @"Open...", @"Save As...", nil];   
     [takeAction setActionSheetStyle:UIActionSheetStyleDefault]; 
// use this to implement it with a tabBarController; similar ways to work with navBars 
     [takeAction showFromTabBar:(UITabBar *)[[self tabBarController] view]]; 
     [takeAction release]; 

與一個alertView,你的按鈕響應與

- (void)actionSheet:(UIActionSheet *)actionSheet 

    clickedButtonAtIndex:(NSInteger)buttonIndex 
    { 
     if (buttonIndex == [actionSheet destructiveButtonIndex]) { 
      [self deleteIt]; 
     } else if (buttonIndex == [actionSheet cancelButtonIndex]) { 
     } else if (buttonIndex == 1) { 
      [self createNew]; 
     } else if (buttonIndex == 2) { 
      [self openSaved]; 
     } else if (buttonIndex == 3) { 
      [self saveAs]; 
     } else { 
     } 
    } 

此外,確保申報的viewController是委託:

<UIActionSheetDelegate>