当前位置 : 主页 > 手机开发 > ios >

iOS实现选项卡效果的方法

来源:互联网 收集:自由互联 发布时间:2021-05-16
先来看看实现效果: 控件是如何使用的 添加LMJTabDelegate代理 LMJTab * tab = [[LMJTab alloc] initWithFrame:CGRectMake(10, 50, 300, 30) lineWidth:1 lineColor:[UIColor blackColor]];[tab setItemsWithTitle:[NSArray arrayWithOb

先来看看实现效果:

控件是如何使用的

添加LMJTabDelegate代理

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];

代理函数

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

LMJTab介绍:

@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开发者们有所帮助,如果有疑问大家可以留言交流。

网友评论