iOS实现选项卡效果的方法

时间:2021-11-23 06:48:59

先来看看实现效果:

iOS实现选项卡效果的方法

控件是如何使用的

添加LMJTabDelegate代理

?
1
2
3
4
5
LMJTab * tab = [[LMJTab alloc] initWithFrame:CGRectMake(10, 50, 300, 30) lineWidth:1 lineColor:[UIColor blackColor]];
[tab setItemsWithTitle:[NSArray arrayWithObjects:@"选项一",@"选项二",@"选项三", nil] normalItemColor:[UIColor whiteColor] selectItemColor:[UIColor blackColor] normalTitleColor:[UIColor blackColor] selectTitleColor:[UIColor whiteColor] titleTextSize:15 selectItemNumber:1];
tab.delegate   = self;
tab.layer.cornerRadius = 5.0;
[self.view addSubview:tab];

代理函数

?
1
2
3
-(void)tab:(LMJTab *)tab didSelectedItemNumber:(NSInteger)number{
 NSLog(@"CLICKED:%ld",number);
}

LMJTab介绍:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
@protocol LMJTabDelegate <NSObject>
 
-(void)tab:(LMJTab *)tab didSelectedItemNumber:(NSInteger)number;
 
@end
 
@interface LMJTab : UIView
 
@property (nonatomic,assign) id<LMJTabDelegate>delegate;
 
/**
 * 控件初始化
 *
 * @param frame  控件的frame
 * @param lineWidth 边线宽度
 * @param lineColor 边线颜色
 *
 * @return 控件实例
 */
-(id)initWithFrame:(CGRect)frame lineWidth:(CGFloat)lineWidth lineColor:(UIColor *)lineColor;
 
/**
 * 设置选项卡的Items
 *
 * @param titles  选项卡的标题数组
 * @param nItemColor 正常选项的颜色
 * @param sItemColor 选中选项的颜色
 * @param nTitleColor 正常标题的颜色
 * @param sTitleColor 选中标题的颜色
 * @param size  标题大小
 * @param number  默认选中选项(取值范围:0 ~ ...)
*/
-(void)setItemsWithTitle:(NSArray *)titles normalItemColor:(UIColor *)nItemColor selectItemColor:(UIColor *)sItemColor normalTitleColor:(UIColor *)nTitleColor selectTitleColor:(UIColor *)sTitleColor titleTextSize:(CGFloat)size selectItemNumber:(NSInteger)number;
 
@end

总结

以上就是这篇文章的全部内容了,希望能对各位iOS开发者们有所帮助,如果有疑问大家可以留言交流。

原文链接:http://www.jianshu.com/p/c55b7a57fd7e