0

头文件:SettingsVC.h ViewController.h

实现文件:SettingsVC.m ViewController.m

在 ViewController.m 中,我使用顶部的这行代码导入了 SettingsVC.h

导入“SettingsVC.h”,这样我就可以从不同的视图从步进器获取值。

在 SettingsVC.h 我有一行代码说 IBOutlet UIStepper *mainStepper;

分配给步进器。

当我尝试通过执行此 mainStepper.value 从 ViewController.m 访问步进器的值时,它不起作用,但它在 Settings.m 中起作用 感谢您的帮助。

维京人的新东西

设置VC.h 文件

#import <UIKit/UIKit.h>

@interface SettingsVC : UIViewController <UIPickerViewDataSource, UIPickerViewDelegate> {

IBOutlet UILabel *mainTimeShow;
IBOutlet UILabel *armTimeShow;
IBOutlet UILabel *defuseTimeShow;
IBOutlet UIStepper *armStepper;
IBOutlet UIStepper *defuseStepper;
IBOutlet UIStepper *mainStepper;


}

-(IBAction)goToClock;
@property (nonatomic, retain) UIStepper *mainStepper;
-(IBAction)mainTimeStepper;
-(IBAction)armTimeStepper;
-(IBAction)defuseTimeStepper;

@end

设置VC.m 文件

#import "SettingsVC.h"

@interface SettingsVC ()

@end

@implementation SettingsVC

@synthesize mainStepper;

@end

ViewController.m 文件

#import "ViewController.h"
#import "SettingsVC.h"

@interface ViewController ()

@end

@implementation ViewController

-(void)here {
SettingsVC.mainStepper.value; //Property mainStepper not found on object of type 'SettingsVC'
}

@end
4

1 回答 1

0

我编辑了我的答案,这应该让一切都清楚。您只在一个类中创建 UIStepper,在本例中为 SettingsVC。然后你可以通过其他类中的属性来检索变量,只需要导入SettingsVC。

您需要在 SettingsVC.h 中创建该属性

#import <UIKit/UIKit.h>

@interface SettingsVC : UIViewController <UIPickerViewDataSource, UIPickerViewDelegate> {

// Your other instance variables

}

@property (nonatomic, strong) UIStepper *mainStepper;

@end

需要在SettingsVC.m中综合属性

#import "ViewController.h"
#import "SettingsVC.h"

@implementation SettingsVC

@synthesize mainStepper;

@end

假设您有一个名为 ViewController 的类。您可以像这样访问 UIStepper 的值:

#import "ViewController.h"
#import "SettingsVC.h"

@implementation ViewController

- (void)viewDidLoad
{
    [super viewDidLoad];

    SettingsVC *settingsVC = [[SettingsVC alloc] init];
    settingsVC.mainStepper.value = 23.0;

    NSLog(@"%f", settingsVC.mainStepper.value);
}

@end

您将在其他类中使用它,因此您需要保留此属性。您通常仅将 assign 与原始值(例如 BOOL)一起使用。

@property (nonatomic, strong) UIStepper *mainStepper;

编辑:ARC 会自动为你发布 settingsVC,所以永远不要明确发布。

于 2012-04-21T01:15:38.883 回答