jd1*_*182 27 iphone xcode objective-c uitableview ios
我坚持认为这是一件很简单的事情.我有一个包含UITextView对象的自定义表格单元格.我希望此对象中的文本为灰色.当我在界面构建器中设置颜色时,它将其显示为灰色,但在模拟器中它仍然是黑色.
这是一个如何设置的故障:
我更新了MasterViewController以填充我的自定义单元格.当我运行模拟器时,它在显示数据的自定义单元格方面都能正常工作.
正如我之前提到的,当我尝试更改自定义单元格的UITextView中的文本颜色时出现问题.如果我在界面构建器中将其设置为浅灰色,则它在模拟器中无效.
我已经在下面提供了相关的代码片段和截图.我不是100%确定什么与问题有关,什么不是,如果你需要看到我未在下面显示的东西,只要问我将提供它.
**编辑
当我注销我的UITextView的颜色属性时,它输出(null).请参阅下面的MasterViewController.m代码.
自定义单元格 - NTFYNoteCell.h
#import <UIKit/UIKit.h>
@interface NTFYNoteCell : UITableViewCell
@property (weak, nonatomic) IBOutlet UILabel *titleLabel;
@property (weak, nonatomic) IBOutlet UITextView *descriptionText;
@end
Run Code Online (Sandbox Code Playgroud)
取自MasterViewController.m:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
NTFYNoteCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Cell" forIndexPath:indexPath];
NTFYNote *note = _notes[indexPath.row];
cell.titleLabel.text = [note title];
cell.descriptionText.text = [note shortDescription];
NSLog(@"TEXTVIEW: %@", cell.descriptionText);
NSLog(@"TEXT COLOR: %@", cell.descriptionText.textColor); // This outputs (null)
return cell;
}
Run Code Online (Sandbox Code Playgroud)
从上面的代码调出:
2014-01-19 19:42:52.001 appname[5050:70b] TEXTVIEW: <UITextView: 0xa1bfe00; frame = (14 26; 273 57); text = 'This is a generic descrip...'; clipsToBounds = YES; autoresize = RM+BM; gestureRecognizers = <NSArray: 0x8be0530>; layer = <CALayer: 0x8be1fe0>; contentOffset: {0, 0}>
2014-01-19 19:42:52.001 appname[5050:70b] TEXT COLOR: (null)
2014-01-19 19:42:52.004 appname[5050:70b] TEXTVIEW: <UITextView: 0xa1cd400; frame = (14 26; 273 57); text = 'This is a generic descrip...'; clipsToBounds = YES; autoresize = RM+BM; gestureRecognizers = <NSArray: 0x8b8fb40>; layer = <CALayer: 0x8bf5300>; contentOffset: {0, 0}>
2014-01-19 19:42:52.005 appname[5050:70b] TEXT COLOR: (null)
2014-01-19 19:42:52.007 appname[5050:70b] TEXTVIEW: <UITextView: 0xe17e000; frame = (14 26; 273 57); text = 'This is a generic descrip...'; clipsToBounds = YES; autoresize = RM+BM; gestureRecognizers = <NSArray: 0xd857bb0>; layer = <CALayer: 0xd85d610>; contentOffset: {0, 0}>
2014-01-19 19:42:52.007 appname[5050:70b] TEXT COLOR: (null)
2014-01-19 19:42:52.009 appname[5050:70b] TEXTVIEW: <UITextView: 0x99af200; frame = (14 26; 273 57); text = 'This is a generic descrip...'; clipsToBounds = YES; autoresize = RM+BM; gestureRecognizers = <NSArray: 0x8a81ea0>; layer = <CALayer: 0x8a580c0>; contentOffset: {0, 0}>
2014-01-19 19:42:52.009 appname[5050:70b] TEXT COLOR: (null)
Run Code Online (Sandbox Code Playgroud)
UITextView连接到我的自定义单元格中的插座:

在界面构建器中将字体颜色设置为浅灰色:

它在iPhone模拟器中的样子:

jd1*_*182 114
在解决了这个问题后,我带着新信息回到谷歌,发现了以下Stack Overflow问题:
如果你没有检查UITextView属性下的'Selectable'复选框,它就不会响应任何字体变化,包括颜色.
我检查了这个盒子,现在它都按预期工作了.
谢谢你的帮助!
| 归档时间: |
|
| 查看次数: |
16503 次 |
| 最近记录: |