全球应用内主页按钮

时间:2014-02-21 03:11:22

标签: ios iphone objective-c

构建一个界面,但是我需要一个按钮,让我们说它是一个圆形的HOME按钮,它位于屏幕的右下方,它总是在那里,并且总是会让你回到主屏幕。

它在我正在努力实现的目标背景下产生感官。

是否有一种聪明/优雅的方式来做到这一点,还是仅限于制作导航控制器的版本?

3 个答案:

答案 0 :(得分:4)

我想在这里你需要以某种方式玩导航控制器。在应用程序堆栈的底部始终存在RootViewController,应用程序堆栈中相对于应用程序窗口推送所有其他控制器。

请按照以下步骤完成您的问题要求。

RootViewController分配给您的HomeViewController(您希望通过屏幕的右下方一次又一次地来到这里)。

HomeViewController *homeViewController = self.window.rootViewController;

每次点击“最右下方按钮”时都会调用此方法。

[self popToRootViewController];

希望这可以帮助你!!

答案 1 :(得分:1)

为此,请为主页按钮设置界面

@interface stickyHomeButton :UIViewController

@end

@implementation stickyHomeButton

- (void)viewDidLoad
{
    [super viewDidLoad];
    BDSAppDelegate *mainDelegate=[[UIApplication sharedApplication] delegate];

    UIButton  *homeButton=[UIButton buttonWithType:UIButtonTypeCustom];
    [homeButton setFrame:homeButtonRect];
    //desing you home button as you want
    [homeButton addTarget:self action:@selector(popToHomeViewController) forControlEvents:UIControlEventTouchUpInside];

    [[mainDelegate window] addSubview:homeButton];
    [[mainDelegate window] bringSubviewToFront:homeButton];

}

-(void)popToHomeViewController
{
    [[self navigationController] popToRootViewControllerAnimated:YES];
}
@end

你准备好了主页按钮,现在你需要做一件简单的事情。所有viewController都需要继承stickyHomeButton

答案 2 :(得分:0)

或者您可以添加一个容器视图,全屏大小,并在其中显示您的模态作为childrenViewControllers,在层次结构中使用此容器视图上方的静态按钮...