应用程序中任何位置的持久视图

时间:2011-03-21 18:42:13

标签: iphone ios view uiviewcontroller uitabbarcontroller

我是Objective-C的新手,我正在开发一个webradio应用程序。

我的应用程序由TabBarController中包含的一些NavigationControllers组成。

我想制作一个能够一直停留在TabBar上方的View。 (它将包含音频播放器控件,并且必须可以在应用程序的任何位置访问)

最好的方法是什么?

谢谢!

SQ; P

1 个答案:

答案 0 :(得分:2)

您需要将视图添加为UITabBarController视图属性的子视图:

m_yourToolbar =[[UIToolbar alloc] initWithFrame:CGRectMake(0, 401, 320, 44)];
// set some properties on the toolbar
// ...
[self.tabBarController.view m_yourToolbar];

这为UITabBarController(m_tabBarController)中的每个选项卡的内容添加了UILabel等等。

@interface YouAppDelegate : NSObject <UIApplicationDelegate, UITabBarControllerDelegate> {
    UIToolbar * m_yourToolbar;

    // ... whatever other stuff you have in your app delegate
}

@property (nonatomic, retain) UIToolbar * yourToolbar;

在您的app delegate实现中,您需要:

@synthesize yourToolbar= m_yourToolbar;
// .. other app delegate stuff

因此,在需要更新工具栏的视图控制器中,您可以获取应用程序委托,获取yourToolbar属性并在其上设置属性:

AppDelegate *appDelegate = (YouAppDelegate *)[[UIApplication sharedApplication] delegate];
// set stuff on the toolbar property
appDelegate.yourToolbar.stuff = stuff;