我试图获得一些想法,将IBAction生成的值集中到一个类中。
事实上: 类中有一个名为 TabBarController 的IBAction(类型为UiTabBarController,嵌入了导航控制器并通过StoryBoard生成),可以设置段的值。
问题是尝试将这些值存储在由 TabBarController 切换的另一个类的变量 VideoLIS 中。它的布尔值是因为它将被用作"开关"获取我必须启动的视频或文字。
TabBarController.h中的
#import <UIKit/UIKit.h>
@interface TabBarController: UITabBarController
{
UISegmentedControl *segmentControl;
@public
BOOL *videoLIS;
}
@property (readwrite) BOOL *videoLIS;
@property (nonatomic, retain) IBOutlet UISegmentedControl *segmentControl;
@property (nonatomic) BOOL *checkSegmentedControlState;
-(IBAction) segmentedControlChanged;
-(BOOL) statoLIS;
-(BOOL) checkSegmentedControlState;
@end
TabBarController.m中的
#import "TabBarController.h"
@implementation TabBarController
@synthesize segmentControl;
@synthesize videoLIS;
@synthesize checkSegmentedControlState;
- (void)viewDidLoad {
[super viewDidLoad];
videoLIS=TRUE;
}
-IBAction **segmentedControlChanged**{
switch (segmentControl.selectedSegmentIndex) {
case 0:
videoLIS=TRUE;
NSLog(**videoLIS** ? @"LIS" : @"Testo");
break;
case 1:
NSLog(@"TEXT Selected");
videoLIS=FALSE;
NSLog(**videoLIS** ? @"LIS" : @"Testo");
break;
default:
break;
}
}
如何从另一个类(UIViewController)获取videoLIS的值?
我正在考虑使用NSNotification ......或者您有其他解决方案吗? 非常感谢你的帮助。
编辑: 我试过另一个解决方案我放弃了这种方式并将UISegmentControl移动到每个ViewControllers中,因此我将结果放在Class中,而不用担心这个问题。现在结果来了。
非常感谢您的提示。