webView shouldStartLoadWithRequest在一个程序中工作,但无法在另一个程序中工作

时间:2011-12-02 05:43:54

标签: ios

我在我的一个程序中非常成功地使用shouldStartLoadWithRequest,但整个项目是一个概念证明和邋and,我正在重新开始一个新项目。

然而shouldStartLoadWithReqest不再为我调用,但我看不出两个项目之间的重要区别在哪里(但是第一个是使用.nibs,第二个我不是使用它们。)

为了开始,我正在使用一个带有UIWebView的控制器作为其视图:

@interface IMSRootController : UIViewController <UIWebViewDelegate> {

    UIWebView*  webView;
}

(webView被声明为@property和@synthesized)

- (void)loadView {
    [super loadView];
    webView = [[UIWebView alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame]];
    self.view = webView;
    [webView release]; }


- (void)viewDidLoad {
    [super viewDidLoad];
    [[self navigationController] setNavigationBarHidden:YES animated:NO];
    [self displayPage]; }

-(void) displayPage { ...   [webView loadHTMLString:self.htmlString baseURL:baseURL]; }


- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType 
{
...

怎么了?

由于

1 个答案:

答案 0 :(得分:2)

您的对象未被设置为UIWebView对象的委托,因此您将不会收到任何委托消息。在某些时候,无论是loadView还是displayPage(但在调用loadHTMLString:baseURL:之前),请执行以下操作:

webView.delegate = self;