将 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:

感谢您的建议。但是,我在给出的所有建议中都遇到了同样的错误:

Error message

对于属性,您必须使用 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