- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我面临一个有关某个模块的问题,让我清理一下该模块的流程。
我有一个自定义的 UITableviewCell。
当我收到一些新信息时,我会发布一条通知
[[NSNotificationCenter defaultCenter] postNotificationName:KGotSomething object:nil userInfo:message];
鉴于我维护表格的位置,我正在启动自定义单元格
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
cell= [[CustomCell alloc] initWithFrame: reuseIdentifier:identifier document:doc];
return cell;
}
现在位于customcell.mm
- (id)initWithFrame:(CGRect)frame reuseIdentifier:(NSString *)reuseIdentifier
{
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(GotSomething:)
name:KGotSomething
object:nil];
}
并在释放中
- (void)dealloc
{
[[NSNotificationCenter defaultCenter] removeObserver:self
name:KGotSomething
object:nil];
}
现在我的应用程序由于此通知而崩溃,并且永远不会调用 dealloc。
你们能帮我吗,如何让它工作或者我在这里做错了什么......
谢谢
萨加尔
最佳答案
您的initWithFrame:reuseIdentifier:
和dealloc
方法不完整。是故意的吗?
initWithFrame:reuseIdentifier:
应包含对 super 的调用:
- (id)initWithFrame:(CGRect)frame reuseIdentifier:(NSString *)reuseIdentifier
{
self = [super initWithFrame:frame reuseIdentifier:reuseIdentifier];
if (self) {
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(GotSomething:)
name:KGotSomething
object:nil];
}
return self;
}
和dealloc
:
- (void)dealloc
{
[[NSNotificationCenter defaultCenter] removeObserver:self
name:KGotSomething
object:nil];
[super dealloc];
}
更新
单元格在创建后不会自动释放。所以单元格正在泄漏并且永远不会被释放。代码应该是:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
cell= [[CustomCell alloc] initWithFrame: reuseIdentifier:identifier document:doc];
return [cell autorelease];
}
关于iphone - 由于 PostNotification 导致 EXC_BAD_ACCESS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3043867/
我正在使用 SplitViewController。在MasterViewController的viewDidLoad中: [[NSNotificationCenter defaultCenter]
我需要 postNotification在我的原生应用 android 中。 我有这段代码,但它不起作用: try { OneSignal.postNotification(new JSONO
我正在尝试向所有使用 OneSignal 的注册用户发送通知。 我有几个用户注册进行测试,并已成功从 OneSignal 网站仪表板发送通知。 但是,当我尝试以下代码时,出现以下错误: [OneSig
我面临一个有关某个模块的问题,让我清理一下该模块的流程。 我有一个自定义的 UITableviewCell。 当我收到一些新信息时,我会发布一条通知 [[NSNotificationCenter de
我正在尝试从位置管理器对象向我的 viewController 发出通知。它不起作用 - addObserver 方法中的选择器未被调用。 位置管理器 Object.m 文件(具有标准分派(dispa
如果 NSNotificationCenter postNotificationName 由于未找到观察者或任何其他原因而未能发布,如何捕获? 在我的例子中,有时 postNotificationNa
我回到去年一直在处理的一些代码并更新了所有内容,但现在我的代码无法正常工作。当我现在调用发布通知时,我得到“错误:创建通知失败” 我的 AppDelegate 中有这个: OneSignal.init
首先,我从 locationManager 调用一个方法来更新位置(didUpdateLocations)。在这个方法中,我使用了 postNotification,一切正常。但是,当我第二次从 lo
我使用下面的代码来通知菜单选择索引 NSDictionary *userInfo= [NSDictionary dictionaryWithObject:[NSString stringWi
我有一个功能齐全的代码,可以在适用于 iPhone >5 和所有 iPad 的 iOS >8.0 上完美运行,我通过观察者/通知传递信息和调用功能,但在 iPhone 4S 上它不起作用。 通过调试,
我是一名优秀的程序员,十分优秀!