【问题标题】:How to show multiple web view links on Xcode under one UIViewController如何在一个 UIViewController 下的 Xcode 上显示多个 Web 视图链接
【发布时间】:2015-03-25 04:48:47
【问题描述】:

假设我有一个带有 3 个按钮的应用程序,每个按钮打开 3 个不同的 UIWebView 视图控制器。我不想为每个按钮设置 3 个单独的视图控制器,而是希望拥有 1 个 UIWebView 视图控制器,并且根据按下的按钮,这将显示在 UIWebView 上。

这只是我所说的一个例子

firstViewController

按钮 1 打开雅虎

按钮 2 打开 Google

按钮 3 打开 Bing

secondViewController

如果 button1 被按下,在 UIWebView 上显示 Yahoo 如果 button2 被按下,在 UIWebView 上显示 google 如果按下 button3,则在 UIWebView 上显示 bing

我怎么想出这个?

【问题讨论】:

  • simple man,你用的是哪一个,storyboard还是xib
  • @Anbu.Karthik 我使用故事板
  • 分别设置按钮标签,如 1 2 3 。并按下按钮将其发送到具有 webview 的 viewController。并根据标签值,在 webview 中加载特定链接的内容
  • 或者只是在按下按钮 1 、按钮 2 或按钮 3 时将 1 ,2 ,3 整数值发送到具有 webview 的其他视图控制器。检查下一个视图控制器的属性值并分别加载内容

标签: ios objective-c iphone uiwebview


【解决方案1】:

在 iOS 中,每个对象都包含自己的 tags,如果您有兴趣,请使用其他选项标签。

假设您的 button1.tag=10、button2.tag=20 和 button3.tag=30

在.h文件中设置全局字符串

NSString *activecheck;

// assign the single method for all buttons in touchup inside method

- (IBAction)button_GetDeals:(UIButton*)sender {


switch (sender.tag)
{
    case 10:
      activecheck=@"1";

        break;
        case 20:

          activecheck=@"2";
        break;
          case 30:

          activecheck=@"3";
        break;
 }



- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([segue.identifier isEqualToString:@"secondviewcontrolleridentidiername"]) {

    secondViewController *destViewController = segue.destinationViewController;
    destViewController. buttontype = activecheck;
}

//这是你的第二个视图控制器

@interface secondViewController : UIViewController


 @property (nonatomic, strong) NSString *buttontype;
 @property (strong, nonatomic) IBOutlet UIWebView *webview;

@end

在您的 .m 文件中viewdidload

- (void)viewDidLoad
{
[super viewDidLoad];

if ([buttontype isEqualtoString:@"1"])

  NSString *strURL = @"http://www.google.com";
  NSURL *url = [NSURL URLWithString:strURL];
  NSURLRequest *urlRequest = [NSURLRequest requestWithURL:url];
[self.webiew loadRequest:urlRequest];
 }

就像遵循 bing 和 yahoo 的另外两个条件 ....

【讨论】:

  • 如果您需要帮助,我当然希望与您合作
  • 好的,我明白了,如果这次按钮在不同的视图控制器中,会不会一样?
  • 我也将第一个视图控制器导入到第二个右边?
  • 首先你了解我的概念,我做了什么,k 只是在第一个视图控制器中导入第二个视图 controller.h
  • 你能解释一下你的第一个视图控制器的第一部分代码吗?我有 3 个按钮。
【解决方案2】:

按钮 1 打开雅虎

在行动中 写:

[webView loadRequest:YOUR REQUEST_YAHOO];
// reload your view

按钮 2 打开 Google

在行动中 写:

[webView loadRequest:YOUR REQUEST_GOOGLE];
// reload your view

按钮 3 打开 Bing

在行动中 写:

[webView loadRequest:YOUR REQUEST_Bing];
// reload your view

要重新加载您的视图,您可以使用:

[self.view setNeedsDisplay]; //such methods

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-11-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多