我對iPhone編程相當陌生,而且我正在製作一個相當基礎的應用程序。無論如何,我只想知道如何去創建一個從底部向上滾動的菜單(從標籤欄的頂部開始),該菜單顯示一些選項。我附上了一張更能幫助描繪我的意思的圖片。我假設我應該創建某種子視圖,然後爲其添加一些動畫,但我希望獲得有關啓動的最佳方式的建議。 感謝創建從底部向上滾動的菜單的最佳方式是?
我對iPhone編程相當陌生,而且我正在製作一個相當基礎的應用程序。無論如何,我只想知道如何去創建一個從底部向上滾動的菜單(從標籤欄的頂部開始),該菜單顯示一些選項。我附上了一張更能幫助描繪我的意思的圖片。我假設我應該創建某種子視圖,然後爲其添加一些動畫,但我希望獲得有關啓動的最佳方式的建議。 感謝創建從底部向上滾動的菜單的最佳方式是?
最簡單的解決方案是使用未經修改的UIActionSheet。
如果這不是你正在尋找的,使用模態視圖控制器總是一個選項。
但是,如果你想要的東西,也不會覆蓋整個屏幕,並且可以有一個自定義外觀,其基本思路是這樣的:
的代碼會是這個樣子:
UIView *customView = [[UIView alloc] initWithFrame:CGRectMake(0, self.view.bounds.size.height, self.view.bounds.size.width, kCustomViewHeight)];
[self.view addSubview:customView];
[UIView animateWithDuration:0.2 animations:^{
CGRect f = customView.frame;
f.origin.y -= kCustomViewHeight;
customView.frame = f;
}];
真的不是我自己,而是看到了一個很酷的源代碼,它是與幫助的UIScrollView的執行(默認設置「下面的」屏幕),含UITableView和一個按鈕(顯示在屏幕底部)。在按下此按鈕後(在IBAction中),ScrollView得到了一個移動命令。
縮短,試着看看UIScrollView(玩在它的UITableView)。
我做了類似的事情,通過繼承UIActionSheet並將我自己的控件添加爲子視圖,從屏幕底部彈出一些對象。我想象一種類似的方法可以用於你的情況。
創建UIActionSheet的子類,實現UITableViewDelegate
和UITableViewDataSource
協議。在該類的- (id)init
方法中,將UITableView
作爲子視圖添加爲self
作爲委託和數據源。
然後從主視圖中,用showInView:
調用您的自定義UIActionSheet。
使用代理回調主視圖讓它知道用戶何時選擇一個選項,然後使用[myCustomMenu dismissWithClickedButtonIndex:0 animated:YES]
來隱藏菜單。
我發現你的界面真正吸引人的眼球。 – 2012-02-20 21:07:40