.xib 中的垂直 UISlider 用于自定义类?

Posted

技术标签:

【中文标题】.xib 中的垂直 UISlider 用于自定义类?【英文标题】:Vertical UISlider in .xib for custom class? 【发布时间】:2016-03-08 06:56:51 【问题描述】:

我正在尝试创建一个可重用的自定义视图类,其中包含一个 .xib 文件,其中布置了一些按钮和一个垂直滑块。我知道我可以使用

以编程方式旋转类文件中的 UISlider
slider.transform = CGAffineTransformMakeRotation(CGFloat(M_PI * 3.0 / 2.0))

如果我的班级是@IBDesignable,我可以在主 StoryBoard 中看到垂直滑块,但是否可以在我的 .xib 文件布局中看到垂直滑块?

【问题讨论】:

【参考方案1】:

准确的答案是。但是有一个解决方法。请按照以下步骤操作。

 1. Create a slider 

 2.Show the "Identity Inspector"

 3.Add a "User Defined Runtime Attribute"

 4.Set the key path to "layer.transform.rotation.z", the type as "String" ("Number" won't allow floating point values) (possible since Xcode 5) and the value to "-1.570795" (-π/2).

不幸的是,它在 Interface Builder 中仍会显示为水平。

但是你可以定位中心并且不需要创建自定义类,所以在某些情况下它可能足够有用。

【讨论】:

以上是关于.xib 中的垂直 UISlider 用于自定义类?的主要内容,如果未能解决你的问题,请参考以下文章

匹配 UIToolBar 中的 MPVolumeView 和 UISlider 垂直位置

如何将 UISlider 从自定义类文件中移动到某个位置

iphone+相同的xib用于不同的班级

UISlider 手柄在不同尺寸的 iPad 上更改宽度

Xib 自定义 UIView 的实例化

iOS - 如何以编程方式为控件设置自定义类