Iphone 这是否导致EXC\u访问不良?

Iphone 这是否导致EXC\u访问不良?,iphone,cocoa-touch,uiwebview,Iphone,Cocoa Touch,Uiwebview,离开下面的方法后,我得到了一个EXC_BAD_访问权限。在这一点上,htmlDocument将变得无效,因为它不在范围之内,所以应该是无效的。但这就是我出错的原因吗?当contentView(UIWebView)加载时,htmlDocument就消失了。但是contentView是否已经从loadHTMLString获得了它所需要的东西 - (void)viewDidLoad { [super viewDidLoad]; //something other processing here NS

离开下面的方法后,我得到了一个EXC_BAD_访问权限。在这一点上,htmlDocument将变得无效,因为它不在范围之内,所以应该是无效的。但这就是我出错的原因吗?当contentView(UIWebView)加载时,htmlDocument就消失了。但是contentView是否已经从loadHTMLString获得了它所需要的东西

- (void)viewDidLoad {
[super viewDidLoad];
//something other processing here

NSString *htmlDocument = [NSString stringWithFormat:@"<html> \n"
"<body>%@</body> \n"
"</html>", aboutContent];
[contentView loadHTMLString:htmlDocument baseURL:[NSURL URLWithString:@"http://www.abc.com"]];  
-(void)viewDidLoad{
[超级视图下载];
//这里还有其他处理吗
NSString*htmlDocument=[NSString stringWithFormat:@“\n”
“%@\n”
“”,关于内容];
[contentView loadHTMLString:htmlDocument baseURL:[NSURL URLWithString:@]http://www.abc.com"]];  
}


有没有更好的方法可以一直遵循这一点直到失败?离开这个方法就是我代码的结尾。SDK的东西。

乍一看,我会说这段代码没有问题,假设“aboutContent”是指向对象的有效指针。

乍一看,我会说这段代码没有问题,假设“aboutContent”是指向对象的有效指针。

你可以尝试在模拟器上用Guard Malloc运行你的应用程序,但这并不能保证会有什么结果。我建议您开始注释语句,直到找到导致错误的语句。

您可以尝试在模拟器上使用Guard Malloc运行您的应用程序,但这不能保证显示任何内容。我建议您开始注释语句,直到找到导致错误的语句。

在没有更多上下文的情况下,不清楚您刚才提供的代码片段发生了什么。也就是说,看起来您只需要在设备中本地加载一些HTML。为什么不这样做呢

- (void)viewDidLoad {
    [webView loadRequest:[NSURLRequest 
                          requestWithURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] 
                                                pathForResource:@"help/about.html"
                                                ofType:@"html"]isDirectory:NO]]];
}

使用这种技术,您可以在手机中编写基于HTML的文档,而用户不必知道他们实际上正在查看web视图:这包括Javascript、CSS和整个蜡球。我看到人们实际上把iPhone应用程序放到互联网上只是为了在互联网上呈现一个静态页面,这其实是不必要的。

不清楚您刚才提供的代码片段在没有更多上下文的情况下发生了什么。也就是说,看起来您只需要在设备中本地加载一些HTML。为什么不这样做呢

- (void)viewDidLoad {
    [webView loadRequest:[NSURLRequest 
                          requestWithURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] 
                                                pathForResource:@"help/about.html"
                                                ofType:@"html"]isDirectory:NO]]];
}

使用这种技术,您可以在手机中编写基于HTML的文档,而用户不必知道他们实际上正在查看web视图:这包括Javascript、CSS和整个蜡球。我见过人们把他们的iPhone应用程序放到互联网上,只是为了在互联网上呈现一个静态页面,这其实是不必要的。

从第二篇文章中的示例代码中,您发布的按钮
UIBarButtonItem*按钮
不会被您注释掉的发布后的任何内容保留,因此它被取消分配

您需要将按钮添加到另一个视图中(使用
adSubview
),以便显示该按钮,然后您可以将其释放。父视图将保留该按钮


当然,如果要再次引用该按钮,视图控制器应在其dealloc中保留保留并释放按钮。

第二篇文章中的示例代码,您发布的按钮
UIBarButtonItem*按钮
不会被您注释掉的发布后的任何内容保留,因此它被取消分配

您需要将按钮添加到另一个视图中(使用
adSubview
),以便显示该按钮,然后您可以将其释放。父视图将保留该按钮


当然,如果要再次引用该按钮,视图控制器应将保留和释放按钮保持在其释放位置。

在第二篇文章中,您注释掉的行([按钮释放])将释放已标记为自动释放的对象

请删除正在对按钮执行alloc操作的“autorelease”,或者删除[button release]语句,以便代码在编译时不会出现错误和异常


如果一个对象被标记为自动释放,那么对其调用释放将与对已解除分配的实例调用释放相同,因此会出现错误。

在您的第二篇文章中,您注释掉的行([按钮释放])将释放已标记为自动释放的对象

请删除正在对按钮执行alloc操作的“autorelease”,或者删除[button release]语句,以便代码在编译时不会出现错误和异常


如果对象被标记为自动释放,则对其调用释放将与对释放实例调用释放相同,因此会出现错误。

它是一个有效指针,因为它有一个地址。不过,这条线下的某些东西会分崩离析。但我在那一点上没有参与。此错误通常与某些内存问题有关。肯定是我造成的。它是一个有效的指针,因为它有一个地址。不过,这条线下的某些东西会分崩离析。但我在那一点上没有参与。此错误通常与某些内存问题有关。肯定是我造成的。