我有一个NSManagedObject子类,由XCode模型接口创建.
该类有一些NSString和NSNumber成员,以及一个NSDate成员.
当我尝试设置NSDate成员时,我得到以下异常:
2009-10-12 21:53:32.228 xxx[2435:20b] Failed to call designated initializer on NSManagedObject class 'Item'
2009-10-12 21:53:32.228 xxx[2435:20b] *** -[Item setDate:]: unrecognized selector sent to instance 0x3f7ed30
2009-10-12 21:53:32.229 xxx[2435:20b] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[Item setDate:]: unrecognized selector sent to instance 0x3f7ed30'
date参数和其他参数一样,除了不是a
@property (nonatomic, retain) NS{String,Number}* propname;
Run Code Online (Sandbox Code Playgroud)
它是
@property (nonatomic, retain) NSDate *date;
Run Code Online (Sandbox Code Playgroud)
顺便说一句,Item我正在分配的实例只是一个常规的[[Item alloc] init],没有相关的上下文或任何东西.
首先我认为我的NSDate*有问题,然后我尝试分配它[NSDate日期],甚至是零.它仍然崩溃.
有任何想法吗?
我不是网络专家,所以这可能是我所缺少的非常简单的东西,但是:
考虑以下页面: http:
//pastehtml.com/view/1bg9qno.html
它基本上是一个 s 列表<input>,每个输入都有一个<span>带有文本的助手(它将随着输入的值一起改变keyUp)。
因此,当列表足够长时(如上面的 HTML 页面),如果您通过 Tab 键浏览输入,您最终将到达页面底部的输入,再次 Tab 键,浏览器将向下滚动到下一个输入。
就我而言,输入具有对我的应用程序至关重要的帮助文本。
问题是,当用户向下切换到不可见的输入时,浏览器只会将该输入带入视图,而不是<div class="item">包含帮助文本的整个父级 ( )。因此,当用户在输入中输入内容时,该帮助文本对用户来说是不可见的。
如何告诉浏览器在聚焦视图外输入时将整个父级带入视图?
有什么优雅的解决方案吗?
顺便说一句:这在 Chrome 中不会发生,因为 Chrome 总是向下滚动部分页面,但它总是在Firefox中发生,Firefox 总是尽可能少地滚动到输入。
HTML 看起来像这样:
<body>
<div class="item">
<input type="text" value="text" />
<br />
<span>helper text</span>
</div>
<hr />
...
<hr />
<div class="item">
<input type="text" value="text" />
<br />
<span>helper text</span>
</div>
</body>
Run Code Online (Sandbox Code Playgroud) 我正在实现一个UIView(更准确地说是UITableViewCell)drawRect方法.
我的视图具有透明背景,因此当视图中的某些内容发生变化时,旧的绘制版本仍然存在.因此,如果在第一个drawRect中绘制一个"A",然后在同一点上绘制一个"B",我将它们两个绘制在一起.
如何告诉框架重绘背景?
(我想这不是因为并不总是需要,但在这种情况下它很糟糕)
我想我需要的是相当于win32的invalidateRect,但是我通过UIViews成员并没有找到任何东西.
顺便说一句,我试过setNeedsDisplay,它没有帮助.
我正在自定义UIPickerView的行,所以我在它的委托中实现了viewForRow方法,如下所示:
- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view {
if (view) {
return view;
} else {
NSString *s = [datePickerValues objectAtIndex:row];
UILabel *l = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 300, 44)];
l.text = s;
l.font = [UIFont boldSystemFontOfSize:18];
l.textAlignment = UITextAlignmentCenter;
l.backgroundColor = [UIColor purpleColor];
[l autorelease];
return l;
}
}
Run Code Online (Sandbox Code Playgroud)
我是Obj-C的新手.
由于我是aloc/initing l,我应该根据内存管理指南发布它.但是我还需要退货.自动释放它可以吗?