将 NSString 设置为 UI 标签文本
Setting NSString as UI Label text
.h 文件:
@property (strong,nonatomic) IBOutlet UILabel *output;
.m 文件:
@synthesize output;
我想定义一个包含 UILabel 文本的字符串,所以我写了
NSString *var =[[NSString alloc]initWithFormat:@"%@",output.text];
但是,它告诉我我使用了 "output" 作为未声明的标识符。我做错了什么?
提前致谢
*编辑 1:
感谢您的建议。但是,我在给出的所有建议中都遇到了同样的错误:
对于属性,您必须使用 self
才能访问它们。
所以你应该使用self.output.text
要访问您的财产,您应该使用 self
所以应该看起来
NSString *var =[[NSString alloc]initWithFormat:@"%@",self.output.text];
你可以使用这个:
NSString *var =[[NSString alloc]initWithFormat:@"%@",_output.text];
我认为你没有将标签与 xib 或故事板连接起来 properly.Kindly 再次将标签与 xib 或故事板连接正确,请使用以下屏幕截图和代码。
首先:我从对象库中拖放标签
第二步:点击 control + 鼠标在标签上并将该标签拖动到 ViewController.h
THIRD:现在 BOX 在名称字段中显示默认光标
FOUR : 最后在BOX的名称字段中给出标签名称
一旦我这样做了现在视图Controller.h
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController
@property (strong, nonatomic) IBOutlet UILabel *labelStringText;
@end
然后在ViewController.m
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
@synthesize labelStringText;
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
labelStringText.text = @"";
NSString *strLabelText = [NSString stringWithFormat:@"%@",labelStringText.text];
//OR
NSString *strLabelText = labelStringText.text;
}
为了您的简单理解,我将 label.text 设置为 viewDidLoad.You 中的字符串,只需在您想要的位置设置字符串即可。
您应该创建一个从标签到视图控制器的引用出口,并将代码放在 viewDidLoad 或其他函数中。
首先点击标签,从New Referencing Outlet拖到View Controller:
然后 select 您的 属性 来自列表:
最后,您应该会看到这样的结果:
代码:
.h:
@interface ViewController : UIViewController
@property (strong, nonatomic) IBOutlet UILabel *output;
@end
.m:
@interface ViewController ()
@end
@implementation ViewController
@synthesize output;
- (void)viewDidLoad {
[super viewDidLoad];
NSString *var =[[NSString alloc]initWithFormat:@"%@",output.text];
NSLog(@"%@", var);
}
@end
.h 文件:
@property (strong,nonatomic) IBOutlet UILabel *output;
.m 文件:
@synthesize output;
我想定义一个包含 UILabel 文本的字符串,所以我写了
NSString *var =[[NSString alloc]initWithFormat:@"%@",output.text];
但是,它告诉我我使用了 "output" 作为未声明的标识符。我做错了什么?
提前致谢
*编辑 1:
感谢您的建议。但是,我在给出的所有建议中都遇到了同样的错误:
对于属性,您必须使用 self
才能访问它们。
所以你应该使用self.output.text
要访问您的财产,您应该使用 self
所以应该看起来
NSString *var =[[NSString alloc]initWithFormat:@"%@",self.output.text];
你可以使用这个:
NSString *var =[[NSString alloc]initWithFormat:@"%@",_output.text];
我认为你没有将标签与 xib 或故事板连接起来 properly.Kindly 再次将标签与 xib 或故事板连接正确,请使用以下屏幕截图和代码。
首先:我从对象库中拖放标签
第二步:点击 control + 鼠标在标签上并将该标签拖动到 ViewController.h
THIRD:现在 BOX 在名称字段中显示默认光标
FOUR : 最后在BOX的名称字段中给出标签名称
一旦我这样做了现在视图Controller.h
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController
@property (strong, nonatomic) IBOutlet UILabel *labelStringText;
@end
然后在ViewController.m
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
@synthesize labelStringText;
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
labelStringText.text = @"";
NSString *strLabelText = [NSString stringWithFormat:@"%@",labelStringText.text];
//OR
NSString *strLabelText = labelStringText.text;
}
为了您的简单理解,我将 label.text 设置为 viewDidLoad.You 中的字符串,只需在您想要的位置设置字符串即可。
您应该创建一个从标签到视图控制器的引用出口,并将代码放在 viewDidLoad 或其他函数中。
首先点击标签,从New Referencing Outlet拖到View Controller:
然后 select 您的 属性 来自列表:
最后,您应该会看到这样的结果:
代码:
.h:
@interface ViewController : UIViewController
@property (strong, nonatomic) IBOutlet UILabel *output;
@end
.m:
@interface ViewController ()
@end
@implementation ViewController
@synthesize output;
- (void)viewDidLoad {
[super viewDidLoad];
NSString *var =[[NSString alloc]initWithFormat:@"%@",output.text];
NSLog(@"%@", var);
}
@end