objective-c - 使用类将 NSString 传递到另一个 ViewController

标签 objective-c ios class nsstring

我知道这非常简单,但我正在重新自学基础知识并尝试解决这个问题:-)

我有一个名为 MainVC 的 ViewController,还有一个名为 ClassVC

在 ClassVC 中我有以下代码:

@interface ClassVC : UIViewController
{
   NSString *mainLine;
}

@property (nonatomic, retain) NSString *mainLine;
@end

我在实现文件中有这个:

@synthesize mainLine = _mainLine;

-(NSString *)_mainLine
{
    _mainLine = @"This a string from a Class";
    return _mainLine;
}

现在我在想,如果我将 ClassVC#import 到 MainVC 中,我也可以像这样传输该字符串:

 This code is in the viewDidLoad

    _mainLabel.text = _secondClass.mainLine;

    NSLog(@"%@", _secondClass.mainLine);

但这不起作用 - 所以我不能通过这种方式传递字符串吗???

最佳答案

您的属性是 mainLine,因此重写的 getter 应该是 -(NSString *)mainLine 而不是 -(NSString *)_mainLine。

-(NSString *)mainLine
{
    _mainLine = @"This a string from a Class";
    return _mainLine;
}

这对我有用。在VC类中:

@interface ClassVC : UIViewController 

@property (nonatomic, retain) NSString *mainLine;

@end


#import "ClassVC.h"

@implementation ClassVC

-(NSString *)mainLine
{
    _mainLine = @"This a string from a Class";
    return _mainLine;
}

在 ViewController 中:

#import <UIKit/UIKit.h>
@class ClassVC;

@interface ViewController : UIViewController

@property (strong,nonatomic) ClassVC *secondClass;
@property (weak, nonatomic) IBOutlet UILabel *mainLabel;
@end

#import "ViewController.h"
#import "ClassVC.h"

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    ClassVC *secondClass = [[ClassVC alloc] init];
    self.mainLabel.text = secondClass.mainLine;
     NSLog(@"%@", secondClass.mainLine);
}

关于objective-c - 使用类将 NSString 传递到另一个 ViewController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12291533/

相关文章:

iphone - iPhone 4 丢失后多久搜索一次数据服务?

ios - UINavigationbar 后退按钮无响应

java - 根据枚举输入返回类

php - 从同一类中的静态方法访问另一个方法中的变量

objective-c - 是否可以将 NS_OPTION 设置为 NSMutableDictionary 中的值?

objective-c - 如何将 NSDateComponents 存储到 NSUserDefaults 中?

Objective-C:NSNumber 对象的平滑 NSArray

Java(安卓): calling a function from Context without cast

objective-c - 叠加 PDF 页面

ios - 选择器'logInInBackgroundWithReadPermissions:block:'的未知类方法