在iOS開發中對應用程式進行設定時一般都用UISwitch,偶爾顯得單調,這時候你可以選擇使用第三方開源類庫SSCheckBoxView 。 SSCheckBoxView是一個可用在iOS上一個複選框UI控制項,提供選中和不被選中兩種情況,和5中風格,如
GitHub:https://github.com/ardalahmet/SSCheckBoxView
經過封裝後的SSCheckBoxView使用起來也很簡單,首先初始化它的frame,設定一下顯示風格和是否被選中的狀態,然後再添加到view上即完成一個複選框的顯示
- (void)viewDidLoad{ [super viewDidLoad]; SSCheckBoxView *cb = [[SSCheckBoxView alloc] initWithFrame:CGRectMake(50, 50, 30, 30) style:kSSCheckBoxViewStyleMono checked:YES]; [self.view addSubview:cb]; [cb release]; }
:
五種顯示風格,傳參的時候也可傳0-5之間數設定顯示風格
typedef enum SSCheckBoxViewStyle_ { kSSCheckBoxViewStyleBox = 0, kSSCheckBoxViewStyleDark, kSSCheckBoxViewStyleGlossy, kSSCheckBoxViewStyleGreen, kSSCheckBoxViewStyleMono, kSSCheckBoxViewStylesCount} SSCheckBoxViewStyle;
如果需要說明複選框幹什麼用的,設定下text即可,但是需要對SSCheckBoxView對象的寬度進行適配,寬度太短會顯示不完全;對複選框觀察提供兩種方式,一種是使用選擇的器,另一種是使用Block;
- (void)viewDidLoad{ [super viewDidLoad]; SSCheckBoxView *cb = [[SSCheckBoxView alloc] initWithFrame:CGRectMake(50, 50, 300, 30) style:kSSCheckBoxViewStyleMono checked:YES]; [cb setText:@"這個是什麼呢"]; [cb setStateChangedTarget:self selector:@selector(checkBoxViewChangedState:)]; [self.view addSubview:cb]; [cb release]; SSCheckBoxView *cb2 = [[SSCheckBoxView alloc] initWithFrame:CGRectMake(50, 80, 300, 30) style:3 checked:YES]; [cb2 setText:@"使用Block觀察是否選中"]; [cb2 setStateChangedBlock:^(SSCheckBoxView *cbv) { NSLog(@"複選框狀態: %@",cbv.checked ? @"選中" : @"沒選中"); }]; [self.view addSubview:cb2]; [cb2 release]; }-(void)checkBoxViewChangedState:(SSCheckBoxView*)cbv{ NSLog(@"複選框狀態: %@",cbv.checked ? @"選中" : @"沒選中");}
:
原創部落格歡迎轉載分享,請註明出處http://blog.csdn.net/duxinfeng2010