首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何修改UIControl框架

如何修改UIControl框架
EN

Stack Overflow用户
提问于 2016-01-11 09:05:43
回答 1查看 79关注 0票数 0

我正在使用这个框架HRColorPicker。我想在Storyboard的Autolayout中布局它的子视图,但不知道框架是如何工作的。

它的主类是UIControl的一个子类,名为HRColorPickerView,具有3个属性

代码语言:javascript
复制
@property (nonatomic, strong) IBOutlet UIView <HRColorInfoView> *colorInfoView;

@property (nonatomic, strong) IBOutlet UIControl <HRColorMapView> *colorMapView;

@property (nonatomic, strong) IBOutlet UIControl <HRBrightnessSlider> *brightnessSlider;

每个类都有自己的类,每个类都是选择器中的3个子视图之一。

我想要创建一个带有这个颜色选择器的UIViewController。如果我只制作一个普通的UIView并将其添加到UIViewController中的Storyboard中,并将其类型设置为HRColorPickerView,我将得到默认的颜色选择器,它工作得很好。框架的作者说,这些属性是可定制的,甚至在Storyboard中也有它们的例子。但我不知道如何让他们进入我的故事板,以便我可以定制他们。

但是,我想使用Storyboard来布局带有Autolayout的子视图/属性。基本上,我想在VC中创建我自己的视图,将它们设置为3种类型之一,并将它们放在Storyboard中。当我将视图连接到.h文件时,我尝试将视图的类型设置为3中的每一个,但是当我运行时,会出现崩溃,而且我认为我做得不对。我创建了2个UIView和1个UISlider,每个属性都是其中之一。UISlider得到“未识别的选择器”崩溃,这是不应该发生的,因为支持视图的类应该能够处理它。

这是我的.h文件,在Storyboard中,下面的3个属性是*colorPickerView的子视图。

代码语言:javascript
复制
@interface ColorPickerViewController : UIViewController 

@property (strong, nonatomic) IBOutlet HRColorPickerView *colorPickerView;
@property (strong, nonatomic) IBOutlet HRColorMapView *colorMap;
@property (strong, nonatomic) IBOutlet HRColorInfoView *colorInfo;
@property (strong, nonatomic) IBOutlet HRBrightnessSlider *brightSlider;

@end
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-01-11 09:43:10

我不是作者,所以这是我的猜测。库代码有点混乱,因为协议与实际类同名。

根据屏幕截图,添加UI组件并设置自定义类是正确的方法。但是,我认为滑块上发生的错误是因为HRBrightnessSliderUIControl的子类,所以不能将UISlider拖到视图中。根据这个所以,您需要拖动另一个UIView

如果您真的想编写自己的滑块,可以通过遵循UISlider协议来拖动和使用HRBrightnessSlider

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34717564

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档