【问题标题】:Returning "home" (index.html) in a cordova app using IOS native button使用IOS本机按钮在cordova应用程序中返回“home”(index.html)
【发布时间】:2017-10-07 15:09:34
【问题描述】:

我有一个通过 Cordova 创建的应用程序。此类应用程序的“主页”不是视图,而是 URI (index.html)。所有后续的“视图”实际上都是其他 html 页面(迷你网站)所有这些页面都有内部导航链接(超链接)。 在 IOS 中打开时,我所有的页面都在 mainViewController 的同一个“视图”中。因此,从 IOS 的角度来看,没有“回头”的可能,因为一切都发生在同一个“视图”中。

问题是:我的一些文件链接到 pdf 文件。这些没有返回任何地方的链接。

为了获得后退按钮,我这样做了: 在 Xcode 中:

打开 MainViewController

- 插入按钮栏和一个栏按钮(称为“Titre”和“Home”) - 将栏和按钮拖到 MainViewController.h 中 以下结果

@property (strong, nonatomic) IBOutlet UINavigationItem *titre;
@property (strong, nonatomic) IBOutlet UIBarButtonItem *home;

-将按钮拖入MainViewController.m,结果如下(“做某事”部分除外:

- (IBAction)home:(id)sender { do something }

到目前为止,我还没有记录所有我尝试过的“做某事”,但没有一个奏效。 我什至尝试过一些简单的方法:

 NSLog(@"I just tapped the button!"); 

但是没有渲染。 我可以在 Xcode 日志中看到该按钮被单击,并且该句子被写出,但模拟器上没有任何反应。 我在做什么错,什么操作会使用户返回到“index.html”(我的这个应用的主视图)?

【问题讨论】:

    标签: ios objective-c xcode cordova


    【解决方案1】:

    在您的操作处理程序中,您可以执行以下操作:

    NSURL *nsurl=[NSURL URLWithString:@"index.html"];
    NSURLRequest *nsrequest=[NSURLRequest requestWithURL:nsurl];
    [webView loadRequest:nsrequest];
    

    【讨论】:

    • 谢谢克里斯。我已经遇到过这个,但“webView”无法识别,因为它是在启动时动态创建的,因此没有可调用的 ID。
    • cordova web 视图实例是界面构建器布局的一部分吗?如果是这样,你应该能够得到它的参考?
    【解决方案2】:

    找了几天终于找到答案了:

    [self viewDidLoad]
    

    所以整个事情是:

    - (IBAction)home:(id)sender {[self viewDidLoad];}
    

    没想到这么简单!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-21
      • 1970-01-01
      • 2017-11-25
      相关资源
      最近更新 更多