【问题标题】:Change back to ViewController after certain time interval一定时间间隔后改回 ViewController
【发布时间】:2014-04-05 08:08:02
【问题描述】:

我正在尝试创建一个在第一个视图控制器底部有一个导航栏的应用程序。当用户按下下一步时,他们将被带到情节提要中的第二个视图控制器。我想知道是否可以让程序在 10 秒后自动将用户带回第一个视图控制器?我对 xcode 很陌生,因此非常感谢以简单方式实现此功能的任何帮助

【问题讨论】:

    标签: ios objective-c time uinavigationcontroller


    【解决方案1】:

    只需创建一个函数并在延时后调用它并推入该函数

    在第二个 viecontroller 中

     - (void)viewDidLoad
     {
       [super viewDidLoad];
        [self performSelector:@selector(yourMethod) withObject:nil afterDelay:10.0];
      }
    
    
    
    -(void)yourMethod
    {
      //[self.navigationController popViewControllerAnimated:YES];
        [self  dismissViewControllerAnimated:YES completion:nil];
    }
    

    希望对你有帮助

    【讨论】:

    • 感谢您的回复。我是 xcode 和 Objective-c 的完全菜鸟,所以我为我缺乏知识而道歉。我想将此方法放在我的第一个视图控制器还是第二个视图控制器的文件中?
    • 在第二个视图控制器中,在同一控制器中执行 viewdidload 中的选择器和粘贴方法
    • 所以我在viewdidload方法中加入了这段代码
    • [self performSelector:@selector(yourMethod) withObject:nil afterDelay:10.0];
    • 还添加了其他方法。是否必须做其他事情才能使其恢复到第一个视图控制器?
    【解决方案2】:

    将以下内容添加到您的第二个视图控制器中的 viewDidLoad

    - (void)viewDidLoad {
    
    [super viewDidLoad];
    [self performSelector:@selector(viewWillDisappear:) withObject:nil afterDelay:2.0];
    //I have given 2 seconds. you can change as your wish
    }
    

    下面也添加这个方法。

    -(void) viewWillDisappear:(BOOL)animated{
    
    [self dismissViewControllerAnimated:YES completion:nil];
    }
    

    希望它有效..

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-01-05
      • 1970-01-01
      • 2017-11-07
      • 1970-01-01
      • 2016-04-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多