2

实际上我有一个表格视图,当 SelectrowAtIndexPath然后它加载我的 webView 并播放我的视频,如何从UIWebView我的 tableView 返回?

 -(void)playButtonPressed1:(UIButton*)sender
 {


 Video *currentVideo= [[xmlParservideo videoNames] objectAtIndex:btn1.tag];


  NSLog(@"content============== %@", [currentVideo content2]);



 CGRect webFrame = CGRectMake(0.0, 0.0, 320.0, 460.0);
 UIWebView *webView = [[UIWebView alloc] initWithFrame:webFrame];
 [webView setBackgroundColor:[UIColor greenColor]];
 NSString *urlString=currentVideo.content2;

 NSURL *url = [NSURL URLWithString:urlString];
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];
[webView loadRequest:requestObj];
[[self view] addSubview:webView];  
//    [self.navigationController popViewControllerAnimated:YES];


NSLog(@"jointed2 jjjjjjjjj  %d",btn1.tag);
4

3 回答 3

1

将 Uiwebview 放在另一个视图控制器中,并在选择一行并且视频完成时将其推送回 tableview 控制器。

于 2012-06-27T07:17:03.110 回答
1

在 didSelectRowAtIndexPath 上

videoViewController *newView = [videoViewController alloc]initWithNibName:@"videoViewController" bundle:nil];
[self.navigationController pushViewController:newView animated:YES];

并在视图控制器的 init 方法中以编程方式创建 webView

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {

    self.title = @"Video Player";
UIWebView  *videoWebView = [[UIWebView alloc] initWithFrame:CGRectMake(0, 0, 320, 290)];


[videoWebView setDelegate:self];

NSString *urlAddress = @"http://www.google.com"; 

NSURL *url = [NSURL URLWithString:urlAddress];


NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];

[videoWebView loadRequest:requestObj];


[[self view] addSubview:videoWebView];  


}

return self;
}

好的,现在只需在完成视频后弹出您的视图

 [self.navigationController popViewControllerAnimated: NO];
于 2012-06-27T07:48:04.357 回答
0

一个可能有效的解决方法是使用这个:[webView setHidden:YES];

这会从视图中隐藏 webView,因此只要您希望 webview 消失,请使用该行代码。当您希望它返回视图时,请使用以下命令:[webView setHidden:NO];

于 2012-06-27T07:44:29.127 回答