저는 이것이 아주 간단한 문제라는 것을 알고 있습니다. 그러나 나는 그것에 어려움을 겪어 왔으며 작동하지 않을 것입니다. 특정 행을 선택하면 UITableView URL을 열려고 해요. NSLog 사용 urlSelected 변수가 올바르게 설정되고 UrlViewController에 제대로 전달되는 것을 볼 수 있지만 단순히 웹보기를 표시하지 않습니다. 검은 화면이있는 탐색 메뉴 만 표시합니다. 두 뷰 컨트롤러간에 푸시 관계를 추가하면 ViewController가 올바르게로드되지만 urlSelected 변수를 UrlViewController에 전달하는 데 문제가 있습니다. 이 변수를 전달하는 적절한 방법은 무엇입니까? 아니면 두 ViewController간에 다른 관계를 설정해야합니까? 여기에 내가 현재 가지고있는 것입니다 :UIWebView가 로딩되지 않습니다.
RootViewController.m :
#import "RootViewController.h"
#import "UrlViewController.h"
..........
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
UrlViewController *webController = [[UrlViewController alloc] init];
if(indexPath.row == 0){
webController.urlAddress = @"http://www.yahoo.com";
NSLog(@"urlAddress being passed is:%@", webController.urlAddress);
[self.navigationController pushViewController:webController animated:YES];
}else if(indexPath.row == 1){
webController.urlAddress = @"http://www.google.com";
NSLog(@"urlAddress being passed is:%@", webController.urlAddress);
[self.navigationController pushViewController:webController animated:YES];
}else{
webController.urlAddress = @"http://www.abc.com";
NSLog(@"urlAddress being passed is:%@", webController.urlAddress);
[self.navigationController pushViewController:webController animated:YES];
}
}
UrlViewController.h :
@interface UrlViewController : UIViewController{
NSString *urlAddress;
}
@property (strong) IBOutlet UIWebView *webView;
@property (nonatomic, retain) NSString *urlAddress;
UrlViewController.m :
@implementation UrlViewController
@synthesize webView;
@synthesize urlAddress;
...........
- (void)viewWillAppear:(BOOL)animated {
NSURL *url = [NSURL URLWithString:urlAddress];
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];
[self.webView loadRequest:requestObj];
NSLog(@"The value being receieved is:%@", urlAddress);
}
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view.
}
나는 다음과 같은 출력에서 수신 NSLogs :
2012-03-28 09:53:30.266 BeloitTurner[4278:f803] urlAddress being passed is:http://www.yahoo.com
2012-03-28 09:53:30.269 BeloitTurner[4278:f803] The value being receieved is:http://www.yahoo.com
도움을 주시면 감사하겠습니다.
나는 이것 [여기] (http://stackoverflow.com/questions/8791517/pass-a-uiwebview-request-using-prepareforsegue/13723765#13723765)에 답변했습니다! 조용한 질문입니다. – Ashoor