iphone开发之自定义UIControl对象的视图 UISwitch的字体和颜色

简介:

函数的代码来至iphone开发秘籍,Thanks Erica Sadun。

UISwitch类:

 

 

UISwitch类的单薄到我不知道该说什么了。不过,UIControl对象通常是由一系列的子视图构建的。通过导航控件的视图,可以公开的定制通常不能从标准SDK中访问的对象。这种定制依赖于对控件子视图树的理解,通过下面这样的函数可以递归遍历视图树,就可以了解每一个视图了。

- (void)explode:(id)aView level:(int)aLevel {

         

                   

         

        

         

                   

}

初始化级别为0,打出来的结果是:

UISwitch:UIControl

-_UISwitchSlider:UISlider

--UIImageView:UIView

--UIImageView:UIView

--UIView:UIResponder

---UILabel:UIView

---UILabel:UIView

--UIImageView:UIView

 

然后就可以开始封装自定义UISwitch字体和字体颜色的定制功能

@interface UISwitch (extended)

- (void) setAlternateColors:(BOOL) boolean;//这是文档未记录的特性,显示为橘黄色的背景。

@end

 

@interface _UISwitchSlider : UIView

@end

 

@interface UICustomSwitch : UISwitch

- (void) setLeftLabelText: (NSString *) labelText;

- (void) setRightLabelText: (NSString *) labelText;

@end

 

@implementation UICustomSwitch

- (_UISwitchSlider *) slider {

         

}

- (UIView *) textHolder {

         

}

- (UILabel *) leftLabel {

         

}

- (UILabel *) rightLabel {

         

}

- (void) setLeftLabelText: (NSString *) labelText {

         

}

- (void) setRightLabelText: (NSString *) labelText {

         

}

@end

下面是测试代码:

- (void)loadView

{

         

         

        

         

         

         

         

 

         

         

         

         

         

        

         

         

         

         

         

         

        

         

         

         

         

         

         

         

         

         

        

         

}

这样子定制后的结果老强大了(图1)。

                     

 1                                                                                             2

最后,悲催的事情还是发生了,我们选择了使用资源给出的两张图(图2),结果是我们放弃了那个平滑切换的动画把它做成了一个按钮,点一下换一张图片,记住一个状态。










本文转自 arthurchen 51CTO博客,原文链接:http://blog.51cto.com/arthurchen/577935,如需转载请自行联系原作者

目录
相关文章
|
Web App开发 iOS开发
为 iPhone 和 iPad 自定义网站的主屏幕图标
iPhone 和 iPad 等苹果设备使用主屏幕 (Home Screen, 也称桌面) 管理应用程序, 还可以通过浏览器的添加到主屏幕功能将网站链接作为快捷方式添加为主屏幕图标. 是否你也想过为网站定义一个图标, 如果用户将网站添加至主屏幕, 网站链接看起来更像原生程序, 也能获得更多的关注.
1431 0
|
编解码 iOS开发
iphone 开发的基本入门知识
iphone 开发的基本入门知识
164 0
「镁客早报」iPhone或将在今年采用三摄;传Facebook致力于开发语音助力服务与亚马逊、苹果竞争
亚马逊向美国Alexa设备推免费音乐服务;视频会议软件开发商Zoom纳斯达克上市。
239 0
|
iOS开发
uwp - ContentDialog - 自定义仿iphone提示框,提示框美化
原文:uwp - ContentDialog - 自定义仿iphone提示框,提示框美化 为了实现我想要的效果花费了我很长时间,唉,当初英语不好好学,翻官网翻了半天才找到,分享给刚入门的新手。   首先看一张图片示例,我们要模仿的dialog就是长这样的:     做出来的效果图: 【代码】 XAML【MainPage.
1291 0
|
Web App开发 缓存 开发工具
|
存储 iOS开发 计算机视觉
|
Web App开发 前端开发 JavaScript