4

我正在尝试为我的应用程序中的网站创建类似于自己的“adBanner”的东西。

Banner 是一个带有图像的 Button,它实际上是横幅图形。

[_adBanner setBackgroundImage:[UIImage imageNamed:@"test_banner.png"] forState:UIControlStateNormal];
_adBanner.opaque = YES; 
[self.view addSubview:_adBanner];
[(UIButton*) _adBanner addTarget:self action:@selector(showWebView:) forControlEvents:UIControlEventTouchUpInside];

[_adBanner release];

这是我翻转视图的功能

- (IBAction)showWebView:(id)sender {    

XLog ("Button Clicked");

WebViewController *_webViewController = [[WebViewController alloc] init];


_webViewController.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
[self presentModalViewController:_webViewController animated:YES];  

}

在我的 _webViewController 我想显示一个带有 url 的 UIWebView

首先我编写了一个带有标题的导航栏

WebViewController.m :

// Setting Navigation Bar
CGRect navBarRect = CGRectMake(0.0f, 0.0f, 320.0f, 44.0f);
navBar = [ [ UINavigationBar alloc ] initWithFrame: CGRectMake(navBarRect.origin.x, navBarRect.origin.y, navBarRect.size.width, 45.0f)];
[ navBar setDelegate: self.view ];
[ self.view addSubview: navBar ];
[ navBar release];

// Setting TitleString
NSString* adClientTitleString = [ [ NSString alloc] initWithString:@"Client" ];
// Setting Title
[ navBar pushNavigationItem: [ [ UINavigationItem alloc ] initWithTitle:adClientTitleString ] ];
[ navBar setDelegate: self];

现在我创建了一个后退按钮

[ navBar showButtonsWithLeftTitle: @"Zurück" rightTitle:nil leftBack: YES];

我的问题是如何让我的后退按钮再次关闭模态视图?或者我该如何设置动作?感谢您的帮助

4

2 回答 2

6

如果您在那之后使用此代码,那么它将起作用。

    navBar.topItem.leftBarButtonItem =[UIBarButtonItem alloc]initWithTitle:@"Back" style:UIBarButtonItemStylePlain target:self action:@selector(backButtonItemToDismissModal)];


-(void)backButtonItemToDismissModal{

    [self dismissModalViewControllerAnimated:YES];

}
于 2011-11-16T08:32:07.517 回答
3

如果要使用模态视图控制器,则可以使用 WebViewController 类的 dismissModalViewController 方法将其关闭。

其他方法是使用 UINavigationController。您可以查看此控制器的示例。

要使左键起作用,您还应该实现

- (void)navigationBar:(UINavigationBar*)navbar buttonClicked:(int)button

方法。

于 2010-07-22T17:08:10.833 回答