如何在一个 UIViewController 下显示 Xcode 上的多个 Web 视图链接

How to show multiple web view links on Xcode under one UIViewController

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

这只是我所说的一个例子

第一个视图控制器

按钮 1 打开 Yahoo

按钮 2 打开 Google

按钮 3 打开 Bing

secondViewController

如果按下按钮 1,则在 UIWebView 上显示 Yahoo 如果按下 button2,则在 UIWebView 上显示 google 如果按下 button3,显示 bing o UIWebView

我是怎么想到这个的?

按钮 1 打开 Yahoo

在行动中 写:

[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

在 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 的另外两个条件一样....