作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我试图在整个应用程序中使用整数和文本。我是通过使用 DataClass 来这样做的,并且我已经得到了可以工作的整数。但是,我不确定如何使用文本。我很确定使用 UILabel 是不正确的。我将在下面向您展示我正在尝试做的事情:
DataClass.h
@interface DataClass : NSObject
{
int i;
UILabel *name;
}
@property(nonatomic,assign)int i;
@property(nonatomic,assign)UILabel *name;
+(DataClass*)getInstance;
@end
DataClass.m
#import "DataClass.h"
@implementation DataClass
@synthesize i, name;
static DataClass *instance =nil;
+(DataClass *)getInstance
{
@synchronized(self)
{
if(instance==nil)
{
instance= [DataClass new];
}
}
return instance;
}
@end
StarsViewController.m
//I removed all unessential material for this question
#import "DataClass.h"
- (void)viewDidLoad
{
DataClass *obj=[DataClass getInstanceAgain];
obj.name.text = @"PleaseWork";
NSLog(@"%@", obj.name.text);
[super viewDidLoad];
}
在我的 NSLog 中,我得到了 (null)。有什么想法吗?
最佳答案
据我所知,您没有初始化 UILabel。因此,您将 setText 方法发送给 nil,这是有效的,但不会执行任何操作。
您真的需要 UILabel 来存储文本吗?
您可以轻松地将 UILabel 更改为 NSString,并将属性更改为:
@property(nonatomic,copy)NSString *name;
因此您可以使用以下方式为其设置新文本:
DataClass *obj=[DataClass getInstanceAgain];
obj.name = @"PleaseWork";
关于iphone - 如何在 DataClass 的整个应用程序中使用某种文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6130215/
我是一名优秀的程序员,十分优秀!