使用NSArray对单件

时间:2016-12-09 00:34:36

标签: ios objective-c xcode singleton iboutletcollection

我有一个音序器,每个音轨都有按钮作为插座集合。代码在它自己的视图控制器中工作得很好但是我想将所有方法转移到单例,以便我可以从其他视图控制播放。

例如我有

@property (strong, nonatomic) IBOutletCollection(UIButton) NSArray *trackOneOutletCollection;

但是我有一些方法可以对每个按钮的alpha和标签起作用;这些方法包含这些我不知道如何从单身人士访问的值。我认为单例是存储所有数据的地方,然后从类文件视图控制器调用它?

1 个答案:

答案 0 :(得分:0)

您可以使用继承概念来实现此功能。您需要创建一个包含ParentViewController属性的IBOutletCollection。所有View Controller的其余部分都是ParentViewController的子项。然后你可以在其他视图ontroller中访问IBOutletCollection。像这样。

<强> ParentViewController: -

@interface ParentViewController : UIViewController

@property (strong, nonatomic) IBOutletCollection(UIButton) NSArray *trackOneOutletCollection;

@end

<强> ChildViewController; -

@interface YourViewController : ParentViewController

@end

.m文件

@implementation YourViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    NSLog(@"trackOneOutletCollection = %@"self.trackOneOutletCollection);
}
@end