QMUISegmentedControl
@interface QMUISegmentedControl : UISegmentedControl
/// 获取当前的所有 segmentItem,可能包括 NSString 或 UIImage。
@property(nonatomic, copy, readonly) NSArray *segmentItems;
/**
* 重新渲染 UISegmentedControl 的 UI,可以比较大程度地修改样式。比如 tintColor,selectedTextColor 等等。
*
* @param tintColor Segmented 的 tintColor,作用范围包括字体颜色和按钮 border
* @param selectedTextColor Segmented 选中状态的字体颜色
* @param fontSize Segmented 上字体的大小
*/
- (void)updateSegmentedUIWithTintColor:(UIColor *)tintColor
selectedTextColor:(UIColor *)selectedTextColor
fontSize:(UIFont *)fontSize;
/**
* 用图片而非 tintColor 来渲染 UISegmentedControl 的 UI
*
* @param normalImage Segmented 非选中状态的背景图
* @param selectedImage Segmented 选中状态的背景图
* @param devideImage00 Segmented 在两个没有选中按钮 item 之间的分割线
* @param devideImage01 Segmented 在左边没选中右边选中两个 item 之间的分割线
* @param devideImage10 Segmented 在左边选中右边没选中两个 item 之间的分割线
* @param textColor Segmented 的字体颜色
* @param selectedTextColor Segmented 选中状态的字体颜色
* @param fontSize Segmented 的字体大小
*/
- (void)setBackgroundWithNormalImage:(UIImage *)normalImage
selectedImage:(UIImage *)selectedImage
devideImage00:(UIImage *)devideImage00
devideImage01:(UIImage *)devideImage01
devideImage10:(UIImage *)devideImage10
textColor:(UIColor *)textColor
selectedTextColor:(UIColor *)selectedTextColor
fontSize:(UIFont *)fontSize;
@end
Undocumented
-
获取当前的所有 segmentItem,可能包括 NSString 或 UIImage。
Declaration
Objective-C
@property (nonatomic, copy, readonly) NSArray *segmentItems;
Swift
var segmentItems: [Any]! { get }
-
重新渲染 UISegmentedControl 的 UI,可以比较大程度地修改样式。比如 tintColor,selectedTextColor 等等。
Declaration
Objective-C
- (void)updateSegmentedUIWithTintColor:(UIColor *)tintColor selectedTextColor:(UIColor *)selectedTextColor fontSize:(UIFont *)fontSize;
Swift
func updateSegmentedUI(withTintColor tintColor: UIColor!, selectedTextColor: UIColor!, fontSize: UIFont!)
Parameters
tintColor
Segmented 的 tintColor,作用范围包括字体颜色和按钮 border
selectedTextColor
Segmented 选中状态的字体颜色
fontSize
Segmented 上字体的大小
-
-setBackgroundWithNormalImage:
selectedImage: devideImage00: devideImage01: devideImage10: textColor: selectedTextColor: fontSize: 用图片而非 tintColor 来渲染 UISegmentedControl 的 UI
Declaration
Objective-C
- (void)setBackgroundWithNormalImage:(UIImage *)normalImage selectedImage:(UIImage *)selectedImage devideImage00:(UIImage *)devideImage00 devideImage01:(UIImage *)devideImage01 devideImage10:(UIImage *)devideImage10 textColor:(UIColor *)textColor selectedTextColor:(UIColor *)selectedTextColor fontSize:(UIFont *)fontSize;
Swift
func setBackgroundWithNormalImage(_ normalImage: UIImage!, selectedImage: UIImage!, devideImage00: UIImage!, devideImage01: UIImage!, devideImage10: UIImage!, textColor: UIColor!, selectedTextColor: UIColor!, fontSize: UIFont!)
Parameters
normalImage
Segmented 非选中状态的背景图
selectedImage
Segmented 选中状态的背景图
devideImage00
Segmented 在两个没有选中按钮 item 之间的分割线
devideImage01
Segmented 在左边没选中右边选中两个 item 之间的分割线
devideImage10
Segmented 在左边选中右边没选中两个 item 之间的分割线
textColor
Segmented 的字体颜色
selectedTextColor
Segmented 选中状态的字体颜色
fontSize
Segmented 的字体大小