我經常在iphone應用程序中看到類似底部圖片的東西,並且想知道是否有標準的方法來實現這一點。如何在iPhone UI中提供替代選項?
要清楚,它是一個視圖,覆蓋了一半的屏幕,通常用按鈕來選擇不同的選項。當我要求標準的方式,我的意思的UITableView,UIAlertView中,UIScrollView的,等等
我經常在iphone應用程序中看到類似底部圖片的東西,並且想知道是否有標準的方法來實現這一點。如何在iPhone UI中提供替代選項?
要清楚,它是一個視圖,覆蓋了一半的屏幕,通常用按鈕來選擇不同的選項。當我要求標準的方式,我的意思的UITableView,UIAlertView中,UIScrollView的,等等
是的,它被稱爲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>
您正在尋找UIActionSheet:http://developer.apple.com/library/ios/documentation/uikit/reference/UIActionSheet_Class/Reference/Reference.html
使用這些(或任何其他UI之前元素)也會檢查iOS人機界面指南中關於如何使用它們的說法。我經常看到行爲表被濫用,可悲的是。
甜頭。謝謝。我會確定試試看tmrw! – okysabeni 2011-03-11 04:56:48