gpt4 book ai didi

objective-c - NSView显示和隐藏SubView

转载 作者:行者123 更新时间:2023-12-03 18:02:47 24 4
gpt4 key购买 nike

在我的应用程序中,我需要根据某些用户操作显示和隐藏,我已经完成了以下操作

在界面定义中,添加了类似的 View

@interface MyWnd : NSWindowController {

MyCustomView1 *pCtmView1;

MyCustomView2 *pCtmView2;
}

源文件中有以下相关方法

-(void)CreateSubViews{

NSRect subViewRect = [self GetSubViewRect];

pCtmView1 = [[ MyCustomView1 alloc]initWithFrame:subViewRect]

pCtmView2 = [[ MyCustomView2 alloc]initWithFrame:subViewRect]

initially both view will be hidden

[pCtmView1 setHidden:TRUE];
[pCtmView2 setHidden:TRUE];

[[self window] view addSubView:pCtmView1];
[[self window] view addSubView:pCtmView2];
}

-(void)ShowSubView:(int)viewId{
if(viewId == 0 ){
[pCtmView1 setHidden:FALSE];
[pCtmView1 setNeedDisplay:YES];
}
if(viewId == 1 ){
[pCtmView2 setHidden:FALSE];
[pCtmView2 setNeedDisplay:YES];
}
}

在初始化应用程序中,我正在调用 ShowSubView:0 并且它工作正常, 但根据某些用户操作,我将调用 ShowSubView:1 并且不会显示任何内容 & EXEC_BAD_ACCESS 我可以在 gdb 中看到
请指导我,我需要做更多的事情来显示 View

谢谢

最佳答案

当您的应用崩溃时,查看“调试器”窗口 - 它会告诉您应用崩溃时正在执行什么操作。

您可能想要停止调试器并在 Instruments 的 Zombies 工具下重新运行您的应用程序。当崩溃是因为您向一个死亡对象发送消息时(这在 Cocoa 中可能是 80% 的原因),Zombies 工具会告诉您那是什么对象以及是什么杀死了它。

关于objective-c - NSView显示和隐藏SubView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4769122/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com