小编Pro*_*ody的帖子

Cocoa-Touch,NSManagedObject:设置属性时的异常

我有一个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日期],甚至是零.它仍然崩溃.

有任何想法吗?

iphone cocoa-touch core-data objective-c

2
推荐指数
1
解决办法
5966
查看次数

HTML:当浏览器滚动到某个输入时,如何才能使其将整个输入的父级显示出来?

我不是网络专家,所以这可能是我所缺少的非常简单的东西,但是:
考虑以下页面: 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)

html

2
推荐指数
1
解决办法
1202
查看次数

Cocoa-Touch:实现drawRect时,如何重绘透明背景?

我正在实现一个UIView(更准确地说是UITableViewCell)drawRect方法.
我的视图具有透明背景,因此当视图中的某些内容发生变化时,旧的绘制版本仍然存在.因此,如果在第一个drawRect中绘制一个"A",然后在同一点上绘制一个"B",我将它们两个绘制在一起.

如何告诉框架重绘背景?
(我想这不是因为并不总是需要,但在这种情况下它很糟糕)

我想我需要的是相当于win32的invalidateRect,但是我通过UIViews成员并没有找到任何东西.

顺便说一句,我试过setNeedsDisplay,它没有帮助.

iphone cocoa-touch objective-c

1
推荐指数
1
解决办法
2460
查看次数

Cocoa-Touch:内存管理

我正在自定义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,我应该根据内存管理指南发布它.但是我还需要退货.自动释放它可以吗?

iphone cocoa cocoa-touch objective-c

0
推荐指数
1
解决办法
215
查看次数

标签 统计

cocoa-touch ×3

iphone ×3

objective-c ×3

cocoa ×1

core-data ×1

html ×1