从其他应用程序返回应用程序

时间:2014-05-04 15:50:22

标签: ios objective-c

您好

当我们打电话给我们iphone并且您离开呼叫视图返回跳板时,我们可以使用状态栏返回呼叫视图。 (这张图片可以更好地解释:http://what-when-how.com/wp-content/uploads/2011/08/tmpB178_thumb.jpg

或者,在Facebook应用程序中,当你去使用Facebook应用程序(不是同一个应用程序)时,我们也可以触摸状态栏来回馈Facebook App。

我想知道是否有可能在我的应用中制作它?如果可能的话,我将如何进行? (编辑:我希望从我的应用程序中回到Youtube等其他应用程序。)

感谢

2 个答案:

答案 0 :(得分:1)

熟悉如何在当前应用表单中打开另一个应用后链接:

http://iosdevelopertips.com/cocoa/launching-your-own-application-via-a-custom-url-scheme.html

您只需创建一个具有点击手势的视图并将其用作按钮

即可
- (void)viewDidLoad
{
    [super viewDidLoad];

    [self.navigationController setNavigationBarHidden:YES];

    UIView *tapToReturnButton = [[UIView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, 40)];
    tapToReturnButton.backgroundColor = [UIColor blueColor];

    UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self
                                                                      action:@selector(tapToReturnButtonClicked)];
    [tap setNumberOfTouchesRequired:1];
    [tapToReturnButton addGestureRecognizer:tap];

    UILabel *tapToReturnLabel = [[UILabel alloc] initWithFrame:CGRectMake(0, 20, self.view.frame.size.width, 20)];
    tapToReturnLabel.text = @"Tap to return";
    tapToReturnLabel.textColor = [UIColor whiteColor];
    tapToReturnLabel.textAlignment = NSTextAlignmentCenter;
    tapToReturnLabel.font = [UIFont fontWithName:@"ArialMT"
                                        size:14];

    [tapToReturnButton addSubview:tapToReturnLabel];
    [self.view addSubview:tapToReturnButton];
}


- (void)tapToReturnButtonClicked
{
    NSLog(@"Now you add your code that opens another app(URL) here");
}

编辑:

在我发布上面的代码后,我意识到状态栏上没有轻击手势,即使tapToReturnButton的其他底部(20像素)有点击手势。在我做了一些研究之后,我认为以下链接在点击手势上有更好的解决方案。我可能会使用tapToReturnButton作为占位符,让用户知道触摸的位置并删除UITapGestureRecognizer * tap。

How to detect touches in status bar

同样,我认为有多种方法可以满足您的需求,但上述链接将为您提供良好的起点。

答案 1 :(得分:0)