我正在创建一个 iPhone 应用程序。该应用程序已开发为适合 4 英寸屏幕。现在我必须添加对 3.5 英寸屏幕的支持。我有一些自动适应的视图,例如UITableViews
. 但是,我也有一个视图,其中包含很多来自 Interface Builder 的对象。
通过这段代码,我检查屏幕是 3.5 英寸还是 4 英寸:
if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone)
{
CGSize result = [[UIScreen mainScreen] bounds].size;
if(result.height == 480)
{
// iPhone Classic
NSLog(@"iPhone with 3.5 Inch screen");
}
if(result.height == 568)
{
// iPhone 5
NSLog(@"iPhone with 4 Inch screen");
}
}
我可以在这个代码检查中为这个特定的 ViewController添加故事板中的 IB 约束吗?以编程方式创建这些约束的最简单方法是什么?
编辑:我想要实现的目标:
- 获取我的属性
- 在 Storyboard 中停用此特定 ViewController 的自动布局
- 在上面的检查中手动添加约束。
这是我在 ViewControllers .h 文件中定义的属性的列表:
@property (nonatomic, assign) NSInteger selectedIndex;
@property (nonatomic, retain) AbstractActionSheetPicker *actionSheetPicker;
@property (weak, nonatomic) IBOutlet UITextField *workerField;
@property (weak, nonatomic) IBOutlet UITextField *dateField;
@property (nonatomic, retain) NSMutableArray *workers;
@property (nonatomic, retain) NSDate *selectedDate;
@property (nonatomic, retain) IBOutlet UISwitch *cutSwitcher;
@property (nonatomic, retain) IBOutlet UISwitch *colorSwitcher;
@property (nonatomic, retain) IBOutlet UISwitch *waveSwitcher;
@property (nonatomic) BOOL internetActive;
@property (nonatomic) BOOL hostActive;