2012-02-20 31 views
0

我對iPhone編程相當陌生,而且我正在製作一個相當基礎的應用程序。無論如何,我只想知道如何去創建一個從底部向上滾動的菜單(從標籤欄的頂部開始),該菜單顯示一些選項。我附上了一張更能幫助描繪我的意思的圖片。我假設我應該創建某種子視圖,然後爲其添加一些動畫,但我希望獲得有關啓動的最佳方式的建議。 感謝創建從底部向上滾動的菜單的最佳方式是?

Home Screen Menu

+0

我發現你的界面真正吸引人的眼球。 – 2012-02-20 21:07:40

回答

1

最簡單的解決方案是使用未經修改的UIActionSheet。

如果這不是你正在尋找的,使用模態視圖控制器總是一個選項。

但是,如果你想要的東西,也不會覆蓋整個屏幕,並且可以有一個自定義外觀,其基本思路是這樣的:

  1. 與底部只是一個框架創建視圖你的主要觀點(例如0,406)。
  2. 與主視圖
  3. 使用的UIView動畫可選禁用用戶交互來移動它

的代碼會是這個樣子:

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; 
}]; 
0

真的不是我自己,而是看到了一個很酷的源代碼,它是與幫助的UIScrollView的執行(默認設置「下面的」屏幕),含UITableView和一個按鈕(顯示在屏幕底部)。在按下此按鈕後(在IBAction中),ScrollView得到了一個移動命令。
縮短,試着看看UIScrollView(玩在它的UITableView)。

0

我做了類似的事情,通過繼承UIActionSheet並將我自己的控件添加爲子視圖,從屏幕底部彈出一些對象。我想象一種類似的方法可以用於你的情況。

創建UIActionSheet的子類,實現UITableViewDelegateUITableViewDataSource協議。在該類的- (id)init方法中,將UITableView作爲子視圖添加爲self作爲委託和數據源。

然後從主視圖中,用showInView:調用您的自定義UIActionSheet。

使用代理回調主視圖讓它知道用戶何時選擇一個選項,然後使用[myCustomMenu dismissWithClickedButtonIndex:0 animated:YES]來隱藏菜單。

相關問題