控制器的属性何时何地应该设置?

时间:2010-02-13 20:16:38

标签: iphone properties uiwebview uinavigationcontroller

这一次,我想知道我什么时候应该设置我的房产...

我有一个导航栏,用于推送新控制器(控制Web视图):

NewsViewController *webViewController = [[NewsViewController alloc] init]; // I create my controller

webViewController.urlText = @"http://www.google.fr"; // I set the property

InfonulAppDelegate *delegate = [[UIApplication sharedApplication] delegate]; 

[delegate.newsNavController pushViewController:webViewController animated:YES];

[webViewController release];

我不知道为什么,但下面的代码不起作用:

- (void)viewDidLoad { //viewDidLoad from my webViewController

   [super viewDidLoad];

   //Create a URL object.
   NSURL *url = [NSURL URLWithString:urlText];
   //URL Requst Object
   NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];

   //Load the request in the UIWebView.
   [webView loadRequest:requestObj];
}

我只是想创建一个UIWebView但我需要给控制器使用的URL!

知道我的urlText属性需要设置的地点和时间吗?!?

干杯,

高塞尔

1 个答案:

答案 0 :(得分:0)

你正确使用财产吗?喜欢

@property(nonatomic,retain) NSString *urlText;

如果是这样,请尝试使用这样的自定义init方法;

-(id)initWithUrl:(NSString *)url
{
     if(self = [super init])
     {
          self.urlText = url;

     }
     return self;
}

别忘了在dealloc中发布urlText。现在使用;

NewsViewController *webViewController = [[NewsViewController alloc] initWithUrl:@"someUrl"];