Commit 0e7e3e71a9ade43df12d889141c9d15568920471
1 parent
4c53cc7f
提交公司认证详情UI
Showing
24 changed files
with
1988 additions
and
789 deletions
CNLiveOrganizationValidationModule/Assets/CNLiveOrganizationValidationModule.bundle/organization_detail_company@2x.png
0 → 100644
1.18 KB
CNLiveOrganizationValidationModule/Assets/CNLiveOrganizationValidationModule.bundle/organization_detail_company@3x.png
0 → 100644
2.81 KB
CNLiveOrganizationValidationModule/Classes/CNLiveOrganizationValidationModule/Controller/CNLiveBOraganizationDetailController.h
0 → 100644
| 1 | +// | |
| 2 | +// CNLiveBOraganizationDetailController.h | |
| 3 | +// CNLiveOrganizationValidationModule | |
| 4 | +// | |
| 5 | +// Created by 梁星国 on 2020/4/12. | |
| 6 | +// | |
| 7 | + | |
| 8 | +#import <UIKit/UIKit.h> | |
| 9 | + | |
| 10 | +NS_ASSUME_NONNULL_BEGIN | |
| 11 | + | |
| 12 | +@interface CNLiveBOraganizationDetailController : UIViewController | |
| 13 | + | |
| 14 | +@end | |
| 15 | + | |
| 16 | +NS_ASSUME_NONNULL_END | ... | ... |
CNLiveOrganizationValidationModule/Classes/CNLiveOrganizationValidationModule/Controller/CNLiveBOraganizationDetailController.m
0 → 100644
| 1 | +// | |
| 2 | +// CNLiveBOraganizationDetailController.m | |
| 3 | +// CNLiveOrganizationValidationModule | |
| 4 | +// | |
| 5 | +// Created by 梁星国 on 2020/4/12. | |
| 6 | +// | |
| 7 | + | |
| 8 | +#import <CNLiveBaseKit/CNLiveBaseKit.h> | |
| 9 | + | |
| 10 | +#import "CNLiveBOraganizationDetailController.h" | |
| 11 | +#import "CNLiveBOrganizationDetailHeaderView.h" | |
| 12 | +#import "CNLiveBOrganizationDetailCell.h" | |
| 13 | + | |
| 14 | +@interface CNLiveBOraganizationDetailController () | |
| 15 | +<UITableViewDataSource,UITableViewDelegate> | |
| 16 | + | |
| 17 | +/** 头部*/ | |
| 18 | +@property (nonatomic , strong) CNLiveBOrganizationDetailHeaderView *headerView; | |
| 19 | +///** 脚部*/ | |
| 20 | +//@property (nonatomic , strong) CNLiveBOrganizationTVFooteriew *footerView; | |
| 21 | + | |
| 22 | +/** 列表 */ | |
| 23 | +@property (nonatomic , strong) UITableView *tableView; | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | +@end | |
| 28 | + | |
| 29 | +@implementation CNLiveBOraganizationDetailController | |
| 30 | + | |
| 31 | +#pragma mark - | |
| 32 | +#pragma mark - *** 生命周期 *** | |
| 33 | + | |
| 34 | +- (instancetype)init | |
| 35 | +{ | |
| 36 | + self = [super init]; | |
| 37 | + if (self) { | |
| 38 | + | |
| 39 | + } | |
| 40 | + return self; | |
| 41 | +} | |
| 42 | + | |
| 43 | +- (void)dealloc | |
| 44 | +{ | |
| 45 | + | |
| 46 | +} | |
| 47 | + | |
| 48 | +- (void)viewWillAppear:(BOOL)animated { | |
| 49 | + [super viewWillAppear:animated]; | |
| 50 | +} | |
| 51 | + | |
| 52 | +- (void)viewDidLoad { | |
| 53 | + [super viewDidLoad]; | |
| 54 | + | |
| 55 | + [self editUI]; | |
| 56 | +} | |
| 57 | + | |
| 58 | +- (void)viewDidAppear:(BOOL)animated { | |
| 59 | + [super viewDidAppear:animated]; | |
| 60 | +} | |
| 61 | + | |
| 62 | +- (void)viewDidDisappear:(BOOL)animated { | |
| 63 | + [super viewDidDisappear:animated]; | |
| 64 | +} | |
| 65 | + | |
| 66 | +#pragma mark - | |
| 67 | +#pragma mark - *** editUI *** | |
| 68 | + | |
| 69 | +- (void)editUI { | |
| 70 | + | |
| 71 | + [self.view setBackgroundColor:[UIColor whiteColor]]; | |
| 72 | + | |
| 73 | + [self.view addSubview:self.tableView]; | |
| 74 | + self.tableView.tableHeaderView = self.headerView; | |
| 75 | + | |
| 76 | +// self.tableView.tableFooterView = self.footerView; | |
| 77 | + | |
| 78 | +} | |
| 79 | + | |
| 80 | +#pragma mark - | |
| 81 | +#pragma mark - *** layoutUI *** | |
| 82 | + | |
| 83 | + | |
| 84 | +#pragma mark - | |
| 85 | +#pragma mark - *** delegate *** | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | +#pragma mark - <UITableViewDelegate, UITableViewDataSource> | |
| 90 | + | |
| 91 | +//设置显示个数 | |
| 92 | +- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { | |
| 93 | + | |
| 94 | + return 1; | |
| 95 | +} | |
| 96 | + | |
| 97 | +- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { | |
| 98 | + | |
| 99 | + if (section == 0) { | |
| 100 | + return 13; | |
| 101 | + }else { | |
| 102 | + return 0; | |
| 103 | + } | |
| 104 | + | |
| 105 | +} | |
| 106 | + | |
| 107 | +//设置UI | |
| 108 | +- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { | |
| 109 | + | |
| 110 | + if (indexPath.section == 0) { | |
| 111 | + if (indexPath.row == 1 || indexPath.row == 12) { | |
| 112 | + CNLiveBOrganizationImageVDetailCell *cell = [tableView dequeueReusableCellWithIdentifier:kCNLiveBOrganizationImageVDetailCell forIndexPath:indexPath]; | |
| 113 | + [cell editUIWithIndexPath:indexPath]; | |
| 114 | + return cell; | |
| 115 | + | |
| 116 | + | |
| 117 | + }else { | |
| 118 | + CNLiveBOrganizationDetailCell *cell = [tableView dequeueReusableCellWithIdentifier:kCNLiveBOrganizationDetailCell forIndexPath:indexPath]; | |
| 119 | + [cell editUIWithIndexPath:indexPath]; | |
| 120 | + return cell; | |
| 121 | + } | |
| 122 | + | |
| 123 | + | |
| 124 | + }else { | |
| 125 | + UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Cell" forIndexPath:indexPath]; | |
| 126 | + [cell setBackgroundColor:[UIColor yellowColor]]; | |
| 127 | + return cell; | |
| 128 | + | |
| 129 | + | |
| 130 | + } | |
| 131 | + | |
| 132 | +} | |
| 133 | + | |
| 134 | +- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section { | |
| 135 | + | |
| 136 | + return [UIView new]; | |
| 137 | + | |
| 138 | +} | |
| 139 | + | |
| 140 | +- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section { | |
| 141 | + | |
| 142 | + if (section == 0) { | |
| 143 | + return [UIView new]; | |
| 144 | + | |
| 145 | + }else { | |
| 146 | + return [UIView new]; | |
| 147 | + } | |
| 148 | +} | |
| 149 | + | |
| 150 | +//设置高度 | |
| 151 | +- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath { | |
| 152 | + | |
| 153 | + if (indexPath.section == 0) { | |
| 154 | + if (indexPath.row == 1){ | |
| 155 | + return 80; | |
| 156 | + }else if (indexPath.row == 12){ | |
| 157 | + return 200; | |
| 158 | + }else { | |
| 159 | + return 32; | |
| 160 | + } | |
| 161 | + | |
| 162 | + }else { | |
| 163 | + return 0.01; | |
| 164 | + } | |
| 165 | + | |
| 166 | +} | |
| 167 | + | |
| 168 | +- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section { | |
| 169 | + | |
| 170 | + return 0.01; | |
| 171 | + | |
| 172 | +} | |
| 173 | + | |
| 174 | +- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section { | |
| 175 | + | |
| 176 | + return 0.01; | |
| 177 | + | |
| 178 | +} | |
| 179 | + | |
| 180 | +/** 点击cell实现 */ | |
| 181 | +- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | +} | |
| 186 | + | |
| 187 | + | |
| 188 | +#pragma mark - TODO: | |
| 189 | +#pragma mark - *** 事件实现 *** | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | +#pragma mark - | |
| 195 | +#pragma mark - *** 接口 *** | |
| 196 | + | |
| 197 | +#pragma mark - | |
| 198 | +#pragma mark - *** 私有属性 *** | |
| 199 | + | |
| 200 | +- (UITableView *)tableView { | |
| 201 | + if (_tableView == nil) { | |
| 202 | + _tableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 0, KScreenWidth, KScreenHeight) style:UITableViewStyleGrouped]; | |
| 203 | + _tableView.backgroundColor = [UIColor whiteColor]; | |
| 204 | + [_tableView registerClass:[UITableViewCell class] forCellReuseIdentifier:@"Cell"]; | |
| 205 | + [_tableView registerClass:[CNLiveBOrganizationImageVDetailCell class] forCellReuseIdentifier:kCNLiveBOrganizationImageVDetailCell]; | |
| 206 | + [_tableView registerClass:[CNLiveBOrganizationDetailCell class] forCellReuseIdentifier:kCNLiveBOrganizationDetailCell]; | |
| 207 | + _tableView.separatorStyle = UITableViewCellSeparatorStyleNone; | |
| 208 | + _tableView.dataSource = self; | |
| 209 | + _tableView.delegate = self; | |
| 210 | + | |
| 211 | + } | |
| 212 | + return _tableView; | |
| 213 | +} | |
| 214 | + | |
| 215 | +- (UIView *)headerView { | |
| 216 | + if (!_headerView) { | |
| 217 | + _headerView = [[CNLiveBOrganizationDetailHeaderView alloc] initWithFrame:CGRectMake(0, 0, KScreenWidth, 52)]; | |
| 218 | + } | |
| 219 | + return _headerView;; | |
| 220 | +} | |
| 221 | +// | |
| 222 | +// | |
| 223 | +//- (UIView *)footerView { | |
| 224 | +// if (!_footerView) { | |
| 225 | +// _footerView = [[CNLiveBOrganizationTVFooteriew alloc]initWithFrame:CGRectMake(0, 0, KScreenWidth, 106)]; | |
| 226 | +// } | |
| 227 | +// return _footerView; | |
| 228 | +//} | |
| 229 | + | |
| 230 | + | |
| 231 | +/* | |
| 232 | + #pragma mark - Navigation | |
| 233 | + | |
| 234 | + // In a storyboard-based application, you will often want to do a little preparation before navigation | |
| 235 | + - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { | |
| 236 | + // Get the new view controller using [segue destinationViewController]. | |
| 237 | + // Pass the selected object to the new view controller. | |
| 238 | + } | |
| 239 | + */ | |
| 240 | + | |
| 241 | +@end | ... | ... |
CNLiveOrganizationValidationModule/Classes/CNLiveOrganizationValidationModule/Controller/CNLiveBOrganizationValidattionController.m
| ... | ... | @@ -9,11 +9,16 @@ |
| 9 | 9 | |
| 10 | 10 | #import "CNLiveBOrganizationValidattionController.h" |
| 11 | 11 | #import "CNLiveBOrganizationValidationHeaderView.h" |
| 12 | +#import "CNLiveBOrganizationContentCell.h" | |
| 12 | 13 | |
| 13 | -@interface CNLiveBOrganizationValidattionController ()<UITableViewDataSource,UITableViewDelegate> | |
| 14 | +@interface CNLiveBOrganizationValidattionController ()<UITableViewDataSource,UITableViewDelegate,UITextFieldDelegate,UITextViewDelegate>{ | |
| 15 | + CGPoint contentoffset; | |
| 16 | +} | |
| 14 | 17 | |
| 15 | 18 | /** 头部*/ |
| 16 | 19 | @property (nonatomic , strong) CNLiveBOrganizationValidationHeaderView *headerView; |
| 20 | +/** 脚部*/ | |
| 21 | +@property (nonatomic , strong) CNLiveBOrganizationTVFooteriew *footerView; | |
| 17 | 22 | |
| 18 | 23 | /** 列表 */ |
| 19 | 24 | @property (nonatomic , strong) UITableView *tableView; |
| ... | ... | @@ -68,6 +73,7 @@ |
| 68 | 73 | [self.view addSubview:self.tableView]; |
| 69 | 74 | |
| 70 | 75 | self.tableView.tableHeaderView = self.headerView; |
| 76 | + self.tableView.tableFooterView = self.footerView; | |
| 71 | 77 | |
| 72 | 78 | } |
| 73 | 79 | |
| ... | ... | @@ -78,6 +84,59 @@ |
| 78 | 84 | #pragma mark - |
| 79 | 85 | #pragma mark - *** delegate *** |
| 80 | 86 | |
| 87 | +#pragma mark textfield delegate | |
| 88 | + | |
| 89 | +-(void)textFieldDidBeginEditing:(UITextField *)textField | |
| 90 | +{ | |
| 91 | + if (!textField.superview || !textField) { | |
| 92 | + return; | |
| 93 | + } | |
| 94 | + CNLiveBOrganizationTextField *TF = (CNLiveBOrganizationTextField *)textField; | |
| 95 | + if ([TF.superview isKindOfClass:[CNLiveBOrganizationTFCell class]]) { | |
| 96 | + NSIndexPath *indexpath = [self.tableView indexPathForCell:((CNLiveBOrganizationTFCell *)textField.superview)]; | |
| 97 | + //获取当前cell在tableview中的位置 | |
| 98 | + CGRect rectInTableview = [self.tableView rectForRowAtIndexPath:indexpath]; | |
| 99 | + //获取当前cell在屏幕中的位置 | |
| 100 | +// CGRect rectInSuperview = [self.tableView convertRect:rectInTableview fromView:self.tableView.superview]; | |
| 101 | + contentoffset.x = self.tableView.contentOffset.x; | |
| 102 | + contentoffset.y = self.tableView.contentOffset.y; | |
| 103 | + if ((rectInTableview.origin.y+50-self.tableView.contentOffset.y)>200) { | |
| 104 | + [self.tableView setContentOffset:CGPointMake(self.tableView.contentOffset.x,((rectInTableview.origin.y-self.tableView.contentOffset.y)-150)+self.tableView.contentOffset.y) animated:YES]; | |
| 105 | + | |
| 106 | + } | |
| 107 | + | |
| 108 | + } | |
| 109 | + | |
| 110 | +} | |
| 111 | + | |
| 112 | +#pragma mark textView delegate | |
| 113 | + | |
| 114 | +-(void)textViewDidBeginEditing:(UITextView *)textView | |
| 115 | +{ | |
| 116 | + if (!textView.superview || !textView) { | |
| 117 | + return; | |
| 118 | + } | |
| 119 | + CNLiveBOrganizationTextView *TV = (CNLiveBOrganizationTextView *)textView; | |
| 120 | + if ([TV.superview isKindOfClass:[CNLiveBOrganizationTViewCell class]]) { | |
| 121 | + NSIndexPath *indexpath = [self.tableView indexPathForCell:((CNLiveBOrganizationTViewCell *)textView.superview)]; | |
| 122 | + //获取当前cell在tableview中的位置 | |
| 123 | + CGRect rectInTableview = [self.tableView rectForRowAtIndexPath:indexpath]; | |
| 124 | + //获取当前cell在屏幕中的位置 | |
| 125 | +// CGRect rectInSuperview = [self.tableView convertRect:rectInTableview fromView:self.tableView.superview]; | |
| 126 | + contentoffset.x = self.tableView.contentOffset.x; | |
| 127 | + contentoffset.y = self.tableView.contentOffset.y; | |
| 128 | + if ((rectInTableview.origin.y+50-self.tableView.contentOffset.y)>200) { | |
| 129 | + [self.tableView setContentOffset:CGPointMake(self.tableView.contentOffset.x,((rectInTableview.origin.y-self.tableView.contentOffset.y)-150)+self.tableView.contentOffset.y) animated:YES]; | |
| 130 | + | |
| 131 | + } | |
| 132 | + | |
| 133 | + } | |
| 134 | + | |
| 135 | +} | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 81 | 140 | #pragma mark - <UITableViewDelegate, UITableViewDataSource> |
| 82 | 141 | |
| 83 | 142 | //设置显示个数 |
| ... | ... | @@ -98,9 +157,34 @@ |
| 98 | 157 | |
| 99 | 158 | //设置UI |
| 100 | 159 | - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { |
| 101 | - UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Cell" forIndexPath:indexPath]; | |
| 102 | - [cell setBackgroundColor:[UIColor yellowColor]]; | |
| 103 | - return cell; | |
| 160 | + | |
| 161 | + if (indexPath.section == 0) { | |
| 162 | + if (indexPath.row == 4) { | |
| 163 | + CNLiveBOrganizationTViewCell *tvCell = [tableView dequeueReusableCellWithIdentifier:kCNLiveBOrganizationTViewCell forIndexPath:indexPath]; | |
| 164 | + [tvCell editUIWithIndexPath:indexPath]; | |
| 165 | + tvCell.contentTV.delegate = self; | |
| 166 | + return tvCell; | |
| 167 | + | |
| 168 | + }else if (indexPath.row == 6) { | |
| 169 | + CNLiveBOrganizationSelectedCell *selectedCell = [tableView dequeueReusableCellWithIdentifier:kCNLiveBOrganizationSelectedCell forIndexPath:indexPath]; | |
| 170 | + | |
| 171 | + return selectedCell; | |
| 172 | + | |
| 173 | + }else if (indexPath.row == 1 || indexPath.row == 12) { | |
| 174 | + CNLiveBOrganizationImageVSelectedCell *imageVCell = [tableView dequeueReusableCellWithIdentifier:kCNLiveBOrganizationImageVSelectedCell forIndexPath:indexPath]; | |
| 175 | + return imageVCell; | |
| 176 | + }else { | |
| 177 | + CNLiveBOrganizationTFCell *tfCell = [tableView dequeueReusableCellWithIdentifier:kCNLiveBOrganizationTFCell forIndexPath:indexPath]; | |
| 178 | + [tfCell editUIWithIndexPath:indexPath]; | |
| 179 | + tfCell.contentTF.delegate = self; | |
| 180 | + return tfCell; | |
| 181 | + } | |
| 182 | + | |
| 183 | + }else { | |
| 184 | + UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Cell" forIndexPath:indexPath]; | |
| 185 | + [cell setBackgroundColor:[UIColor yellowColor]]; | |
| 186 | + return cell; | |
| 187 | + } | |
| 104 | 188 | |
| 105 | 189 | } |
| 106 | 190 | |
| ... | ... | @@ -120,8 +204,7 @@ |
| 120 | 204 | - (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section { |
| 121 | 205 | |
| 122 | 206 | if (section == 0) { |
| 123 | - CNLiveBOrganizationTVFooteriew *footerView = [tableView dequeueReusableHeaderFooterViewWithIdentifier:kCNLiveBOrganizationTVFooteriew]; | |
| 124 | - return footerView; | |
| 207 | + return [UIView new]; | |
| 125 | 208 | |
| 126 | 209 | }else { |
| 127 | 210 | return [UIView new]; |
| ... | ... | @@ -131,15 +214,29 @@ |
| 131 | 214 | //设置高度 |
| 132 | 215 | - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath { |
| 133 | 216 | |
| 134 | - return 80; | |
| 135 | - | |
| 217 | + if (indexPath.section == 0) { | |
| 218 | + if (indexPath.row == 0) { | |
| 219 | + return 60.5; | |
| 220 | + }else if (indexPath.row == 1){ | |
| 221 | + return 120; | |
| 222 | + }else if (indexPath.row == 4){ | |
| 223 | + return 100; | |
| 224 | + }else if (indexPath.row == 12){ | |
| 225 | + return 200; | |
| 226 | + }else { | |
| 227 | + return 44; | |
| 228 | + } | |
| 229 | + | |
| 230 | + }else { | |
| 231 | + return 80; | |
| 232 | + } | |
| 136 | 233 | |
| 137 | 234 | } |
| 138 | 235 | |
| 139 | 236 | - (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section { |
| 140 | 237 | |
| 141 | 238 | if (section == 0) { |
| 142 | - return 42;; | |
| 239 | + return 42; | |
| 143 | 240 | }else { |
| 144 | 241 | return 0.01; |
| 145 | 242 | } |
| ... | ... | @@ -149,7 +246,7 @@ |
| 149 | 246 | - (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section { |
| 150 | 247 | |
| 151 | 248 | if (section == 0) { |
| 152 | - return 106; | |
| 249 | + return 0.01; | |
| 153 | 250 | }else { |
| 154 | 251 | return 0.01; |
| 155 | 252 | } |
| ... | ... | @@ -181,12 +278,12 @@ |
| 181 | 278 | _tableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 0, KScreenWidth, KScreenHeight) style:UITableViewStyleGrouped]; |
| 182 | 279 | _tableView.backgroundColor = [UIColor whiteColor]; |
| 183 | 280 | [_tableView registerClass:[UITableViewCell class] forCellReuseIdentifier:@"Cell"]; |
| 184 | -// [_tableView registerClass:[CNLiveBServiceCertificationCell class] forCellReuseIdentifier:kCNLiveBServiceCertificationCell]; | |
| 185 | -// [_tableView registerClass:[CNLiveBServiceHelpLearnCell class] forCellReuseIdentifier:kCNLiveBServiceHelpLearnCell]; | |
| 186 | -// [_tableView registerClass:[CNLiveBServiceWorkCell class] forCellReuseIdentifier:kCNLiveBServiceWorkCell]; | |
| 187 | -// | |
| 281 | + [_tableView registerClass:[CNLiveBOrganizationTFCell class] forCellReuseIdentifier:kCNLiveBOrganizationTFCell]; | |
| 282 | + [_tableView registerClass:[CNLiveBOrganizationTViewCell class] forCellReuseIdentifier:kCNLiveBOrganizationTViewCell]; | |
| 283 | + [_tableView registerClass:[CNLiveBOrganizationSelectedCell class] forCellReuseIdentifier:kCNLiveBOrganizationSelectedCell]; | |
| 284 | + [_tableView registerClass:[CNLiveBOrganizationImageVSelectedCell class] forCellReuseIdentifier:kCNLiveBOrganizationImageVSelectedCell]; | |
| 285 | + | |
| 188 | 286 | [_tableView registerClass:[CNLiveBOrganizationTVHeaderView class] forHeaderFooterViewReuseIdentifier:kCNLiveBOrganizationTVHeaderView]; |
| 189 | - [_tableView registerClass:[CNLiveBOrganizationTVFooteriew class] forHeaderFooterViewReuseIdentifier:kCNLiveBOrganizationTVFooteriew]; | |
| 190 | 287 | _tableView.separatorStyle = UITableViewCellSeparatorStyleNone; |
| 191 | 288 | _tableView.dataSource = self; |
| 192 | 289 | _tableView.delegate = self; |
| ... | ... | @@ -203,6 +300,13 @@ |
| 203 | 300 | } |
| 204 | 301 | |
| 205 | 302 | |
| 303 | +- (UIView *)footerView { | |
| 304 | + if (!_footerView) { | |
| 305 | + _footerView = [[CNLiveBOrganizationTVFooteriew alloc]initWithFrame:CGRectMake(0, 0, KScreenWidth, 106)]; | |
| 306 | + } | |
| 307 | + return _footerView; | |
| 308 | +} | |
| 309 | + | |
| 206 | 310 | |
| 207 | 311 | /* |
| 208 | 312 | #pragma mark - Navigation | ... | ... |
CNLiveOrganizationValidationModule/Classes/CNLiveOrganizationValidationModule/Other/CNLiveBOrganizationButton.h
0 → 100644
| 1 | +// | |
| 2 | +// CNLiveBOrganizationButton.h | |
| 3 | +// CNLiveOrganizationValidationModule | |
| 4 | +// | |
| 5 | +// Created by 梁星国 on 2020/4/12. | |
| 6 | +// | |
| 7 | + | |
| 8 | +#import <UIKit/UIKit.h> | |
| 9 | + | |
| 10 | +NS_ASSUME_NONNULL_BEGIN | |
| 11 | + | |
| 12 | +@interface CNLiveBOrganizationButton : UIButton | |
| 13 | + | |
| 14 | +@property (nonatomic, strong) UILabel *textL; | |
| 15 | + | |
| 16 | +@property (nonatomic, strong) UIImageView *tipImageV; | |
| 17 | + | |
| 18 | +@end | |
| 19 | + | |
| 20 | +NS_ASSUME_NONNULL_END | ... | ... |
CNLiveOrganizationValidationModule/Classes/CNLiveOrganizationValidationModule/Other/CNLiveBOrganizationButton.m
0 → 100644
| 1 | +// | |
| 2 | +// CNLiveBOrganizationButton.m | |
| 3 | +// CNLiveOrganizationValidationModule | |
| 4 | +// | |
| 5 | +// Created by 梁星国 on 2020/4/12. | |
| 6 | +// | |
| 7 | + | |
| 8 | +#import "CNLiveBOrganizationButton.h" | |
| 9 | + | |
| 10 | +@implementation CNLiveBOrganizationButton | |
| 11 | + | |
| 12 | + | |
| 13 | +//通过代码创建 | |
| 14 | +- (instancetype)initWithFrame:(CGRect)frame | |
| 15 | +{ | |
| 16 | + self = [super initWithFrame:frame]; | |
| 17 | + if (self) { | |
| 18 | + | |
| 19 | + [self setUpUI]; | |
| 20 | + } | |
| 21 | + return self; | |
| 22 | +} | |
| 23 | +//通过xib创建 | |
| 24 | +-(void)awakeFromNib | |
| 25 | +{ | |
| 26 | + [super awakeFromNib]; | |
| 27 | + [self setUpUI]; | |
| 28 | +} | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | +- (void)setUpUI | |
| 33 | +{ | |
| 34 | + | |
| 35 | + | |
| 36 | +} | |
| 37 | + | |
| 38 | + | |
| 39 | +@end | ... | ... |
CNLiveOrganizationValidationModule/Classes/CNLiveOrganizationValidationModule/Other/CNLiveBOrganizationImageView.h
0 → 100644
| 1 | +// | |
| 2 | +// CNLiveBOrganizationImageView.h | |
| 3 | +// CNLiveOrganizationValidationModule | |
| 4 | +// | |
| 5 | +// Created by 梁星国 on 2020/4/12. | |
| 6 | +// | |
| 7 | + | |
| 8 | +#import <UIKit/UIKit.h> | |
| 9 | + | |
| 10 | +NS_ASSUME_NONNULL_BEGIN | |
| 11 | + | |
| 12 | +@interface CNLiveBOrganizationImageView : UIImageView | |
| 13 | + | |
| 14 | +@property (strong, nonatomic) UILabel *tipLabel; | |
| 15 | + | |
| 16 | +@end | |
| 17 | + | |
| 18 | +NS_ASSUME_NONNULL_END | ... | ... |
CNLiveOrganizationValidationModule/Classes/CNLiveOrganizationValidationModule/Other/CNLiveBOrganizationImageView.m
0 → 100644
| 1 | +// | |
| 2 | +// CNLiveBOrganizationImageView.m | |
| 3 | +// CNLiveOrganizationValidationModule | |
| 4 | +// | |
| 5 | +// Created by 梁星国 on 2020/4/12. | |
| 6 | +// | |
| 7 | + | |
| 8 | +#import "CNLiveBOrganizationImageView.h" | |
| 9 | + | |
| 10 | +@implementation CNLiveBOrganizationImageView | |
| 11 | + | |
| 12 | +- (instancetype)initWithFrame:(CGRect)frame | |
| 13 | +{ | |
| 14 | + self = [super initWithFrame:frame]; | |
| 15 | + if (self) { | |
| 16 | + [self setUpUI]; | |
| 17 | + } | |
| 18 | + return self; | |
| 19 | +} | |
| 20 | + | |
| 21 | + | |
| 22 | +//通过xib创建 | |
| 23 | +-(void)awakeFromNib | |
| 24 | +{ | |
| 25 | + [super awakeFromNib]; | |
| 26 | + [self setUpUI]; | |
| 27 | +} | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | +- (void)setUpUI | |
| 32 | +{ | |
| 33 | + | |
| 34 | + | |
| 35 | +} | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | +@end | ... | ... |
CNLiveOrganizationValidationModule/Classes/CNLiveOrganizationValidationModule/Other/CNLiveBOrganizationTextField.h
0 → 100644
| 1 | +// | |
| 2 | +// CNLiveBOrganizationTextField.h | |
| 3 | +// CNLiveOrganizationValidationModule | |
| 4 | +// | |
| 5 | +// Created by 梁星国 on 2020/4/12. | |
| 6 | +// | |
| 7 | + | |
| 8 | +#import <UIKit/UIKit.h> | |
| 9 | + | |
| 10 | +NS_ASSUME_NONNULL_BEGIN | |
| 11 | + | |
| 12 | +@interface CNLiveBOrganizationTextField : UITextField | |
| 13 | + | |
| 14 | +@property (strong, nonatomic) NSIndexPath *tfIndexPath; | |
| 15 | + | |
| 16 | +@property (assign, nonatomic) NSInteger contentLengthMax; | |
| 17 | + | |
| 18 | +@end | |
| 19 | + | |
| 20 | +NS_ASSUME_NONNULL_END | ... | ... |
CNLiveOrganizationValidationModule/Classes/CNLiveOrganizationValidationModule/Other/CNLiveBOrganizationTextField.m
0 → 100644
| 1 | +// | |
| 2 | +// CNLiveBOrganizationTextField.m | |
| 3 | +// CNLiveOrganizationValidationModule | |
| 4 | +// | |
| 5 | +// Created by 梁星国 on 2020/4/12. | |
| 6 | +// | |
| 7 | + | |
| 8 | +#import "CNLiveBOrganizationTextField.h" | |
| 9 | + | |
| 10 | +@implementation CNLiveBOrganizationTextField | |
| 11 | + | |
| 12 | + | |
| 13 | +//通过代码创建 | |
| 14 | +- (instancetype)initWithFrame:(CGRect)frame | |
| 15 | +{ | |
| 16 | + self = [super initWithFrame:frame]; | |
| 17 | + if (self) { | |
| 18 | + self.contentLengthMax = 100; | |
| 19 | + [self setUpUI]; | |
| 20 | + } | |
| 21 | + return self; | |
| 22 | +} | |
| 23 | +//通过xib创建 | |
| 24 | +-(void)awakeFromNib | |
| 25 | +{ | |
| 26 | + [super awakeFromNib]; | |
| 27 | + [self setUpUI]; | |
| 28 | +} | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | +- (void)setUpUI | |
| 33 | +{ | |
| 34 | + | |
| 35 | + | |
| 36 | +} | |
| 37 | + | |
| 38 | + | |
| 39 | +//控制placeHolder的位置 | |
| 40 | +-(CGRect)placeholderRectForBounds:(CGRect)bounds | |
| 41 | +{ | |
| 42 | + CGRect inset = CGRectMake(bounds.origin.x+5, bounds.origin.y, bounds.size.width -5, bounds.size.height); | |
| 43 | + return inset; | |
| 44 | +} | |
| 45 | + | |
| 46 | +//控制显示文本的位置 | |
| 47 | +-(CGRect)textRectForBounds:(CGRect)bounds | |
| 48 | +{ | |
| 49 | + CGRect inset = CGRectMake(bounds.origin.x+5, bounds.origin.y, bounds.size.width -5, bounds.size.height); | |
| 50 | + return inset; | |
| 51 | +} | |
| 52 | + | |
| 53 | +//控制编辑文本的位置 | |
| 54 | +-(CGRect)editingRectForBounds:(CGRect)bounds | |
| 55 | +{ | |
| 56 | + CGRect inset = CGRectMake(bounds.origin.x +5, bounds.origin.y, bounds.size.width -5, bounds.size.height); | |
| 57 | + return inset; | |
| 58 | +} | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | +@end | ... | ... |
CNLiveOrganizationValidationModule/Classes/CNLiveOrganizationValidationModule/Other/CNLiveBOrganizationTextView.h
0 → 100644
| 1 | +// | |
| 2 | +// CNLiveBOrganizationTextView.h | |
| 3 | +// CNLiveOrganizationValidationModule | |
| 4 | +// | |
| 5 | +// Created by 梁星国 on 2020/4/12. | |
| 6 | +// | |
| 7 | + | |
| 8 | +#import <UIKit/UIKit.h> | |
| 9 | + | |
| 10 | +NS_ASSUME_NONNULL_BEGIN | |
| 11 | + | |
| 12 | +@interface CNLiveBOrganizationTextView : UITextView<UITextViewDelegate> | |
| 13 | + | |
| 14 | +/** | |
| 15 | + * 提示字label | |
| 16 | + */ | |
| 17 | +@property (nonatomic, strong) UILabel * placeHolderLabel; | |
| 18 | + | |
| 19 | +/** | |
| 20 | + * 提示字 | |
| 21 | + */ | |
| 22 | +@property (nonatomic, strong) NSString * placeholder; | |
| 23 | + | |
| 24 | +/** | |
| 25 | + * 提示字颜色 | |
| 26 | + */ | |
| 27 | +@property (nonatomic, strong) UIColor * placeholderColor; | |
| 28 | + | |
| 29 | +/** | |
| 30 | + * 提示字字体大小 | |
| 31 | + */ | |
| 32 | +@property (nonatomic, strong) UIFont * placeholderFont; | |
| 33 | + | |
| 34 | +/** | |
| 35 | +* 字的最大个数 | |
| 36 | +*/ | |
| 37 | +@property (nonatomic, assign) NSInteger contentLengthMax; | |
| 38 | + | |
| 39 | + | |
| 40 | +@end | |
| 41 | + | |
| 42 | +NS_ASSUME_NONNULL_END | ... | ... |
CNLiveOrganizationValidationModule/Classes/CNLiveOrganizationValidationModule/Other/CNLiveBOrganizationTextView.m
0 → 100644
| 1 | +// | |
| 2 | +// CNLiveBOrganizationTextView.m | |
| 3 | +// CNLiveOrganizationValidationModule | |
| 4 | +// | |
| 5 | +// Created by 梁星国 on 2020/4/12. | |
| 6 | +// | |
| 7 | + | |
| 8 | +#import "CNLiveBOrganizationTextView.h" | |
| 9 | + | |
| 10 | +@implementation CNLiveBOrganizationTextView | |
| 11 | + | |
| 12 | +-(instancetype)initWithFrame:(CGRect)frame{ | |
| 13 | + | |
| 14 | + if (self = [super initWithFrame:frame]) { | |
| 15 | + | |
| 16 | + self.editable = YES; | |
| 17 | + | |
| 18 | + self.contentLengthMax = 400; | |
| 19 | + | |
| 20 | + [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textChanged:) name:UITextViewTextDidChangeNotification object:nil]; //注册textView输入内容改变的通知 | |
| 21 | + | |
| 22 | + } | |
| 23 | + return self; | |
| 24 | +} | |
| 25 | + | |
| 26 | + | |
| 27 | +- (void)setTextViewLayerCornerRadius:(float)radius borderWidth:(float)viewBorderWidth borderColor:(UIColor *)viewBorderColor { | |
| 28 | + | |
| 29 | + | |
| 30 | +} | |
| 31 | + | |
| 32 | + | |
| 33 | +-(void)setPlaceholder:(NSString *)placeholder{ | |
| 34 | + | |
| 35 | + if (_placeholder != placeholder) { | |
| 36 | + | |
| 37 | + _placeholder = placeholder; | |
| 38 | + | |
| 39 | + [self.placeHolderLabel removeFromSuperview]; | |
| 40 | + | |
| 41 | + [self setNeedsDisplay]; | |
| 42 | + | |
| 43 | + | |
| 44 | + } | |
| 45 | + | |
| 46 | +} | |
| 47 | + | |
| 48 | +- (void)textChanged:(NSNotification *)notification{ | |
| 49 | + | |
| 50 | + if ([[self placeholder] length] == 0) { | |
| 51 | + return; | |
| 52 | + } | |
| 53 | + | |
| 54 | + if ([[self text] length] == 0) { //输入内容为空 | |
| 55 | + | |
| 56 | + [self viewWithTag:888].hidden = NO; // 提示字显示 | |
| 57 | + } | |
| 58 | + | |
| 59 | + else {//输入内容不为空 | |
| 60 | + | |
| 61 | + [self viewWithTag:888].hidden = YES; //提示字隐藏 | |
| 62 | + } | |
| 63 | + | |
| 64 | +} | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | +-(void)drawRect:(CGRect)rect{ | |
| 69 | + | |
| 70 | + [super drawRect:rect]; | |
| 71 | + if ([[self placeholder] length] > 0) { | |
| 72 | + if (_placeHolderLabel == nil) { | |
| 73 | + _placeHolderLabel = [[UILabel alloc]initWithFrame:CGRectMake(5, 8, self.bounds.size.width - 16, 0)]; | |
| 74 | + _placeHolderLabel.lineBreakMode = NSLineBreakByWordWrapping; | |
| 75 | + _placeHolderLabel.numberOfLines = 0; | |
| 76 | + _placeHolderLabel.font = self.placeholderFont; | |
| 77 | + _placeHolderLabel.backgroundColor = [UIColor clearColor]; | |
| 78 | + _placeHolderLabel.textColor = self.placeholderColor; | |
| 79 | + _placeHolderLabel.tag = 888; | |
| 80 | + [self addSubview:_placeHolderLabel]; | |
| 81 | + } | |
| 82 | + _placeHolderLabel.text = self.placeholder; | |
| 83 | + [_placeHolderLabel sizeToFit]; | |
| 84 | + [self sendSubviewToBack:_placeHolderLabel]; | |
| 85 | + } | |
| 86 | + | |
| 87 | + if ([[self text] length] == 0 && [[self placeholder] length] >0) { | |
| 88 | + [self viewWithTag:888].hidden = NO; //设置提示字显示 | |
| 89 | + } | |
| 90 | + | |
| 91 | +} | |
| 92 | + | |
| 93 | + | |
| 94 | +@end | ... | ... |
CNLiveOrganizationValidationModule/Classes/CNLiveOrganizationValidationModule/View/CNLiveBOrganizationTFCell.h renamed to CNLiveOrganizationValidationModule/Classes/CNLiveOrganizationValidationModule/View/CNLiveBOrganizationContentCell.h
| ... | ... | @@ -6,6 +6,8 @@ |
| 6 | 6 | // |
| 7 | 7 | |
| 8 | 8 | #import <UIKit/UIKit.h> |
| 9 | +#import "CNLiveBOrganizationTextField.h" | |
| 10 | +#import "CNLiveBOrganizationTextView.h" | |
| 9 | 11 | |
| 10 | 12 | ///UITextField 类型 |
| 11 | 13 | #define kCNLiveBOrganizationTFCell @"CNLiveBOrganizationTFCell" |
| ... | ... | @@ -20,6 +22,13 @@ NS_ASSUME_NONNULL_BEGIN |
| 20 | 22 | |
| 21 | 23 | @interface CNLiveBOrganizationTFCell : UITableViewCell |
| 22 | 24 | |
| 25 | +/** 文本*/ | |
| 26 | +@property (nonatomic, strong) CNLiveBOrganizationTextField *contentTF; | |
| 27 | + | |
| 28 | +@property (strong, nonatomic) NSIndexPath *indexPath; | |
| 29 | + | |
| 30 | +- (void)editUIWithIndexPath:(NSIndexPath *)indexPath; | |
| 31 | + | |
| 23 | 32 | @end |
| 24 | 33 | |
| 25 | 34 | NS_ASSUME_NONNULL_END |
| ... | ... | @@ -31,6 +40,12 @@ NS_ASSUME_NONNULL_BEGIN |
| 31 | 40 | |
| 32 | 41 | @interface CNLiveBOrganizationTViewCell : UITableViewCell |
| 33 | 42 | |
| 43 | +/** 文本*/ | |
| 44 | +@property (nonatomic, strong) CNLiveBOrganizationTextView *contentTV; | |
| 45 | +@property (strong, nonatomic) NSIndexPath *indexPath; | |
| 46 | + | |
| 47 | +- (void)editUIWithIndexPath:(NSIndexPath *)indexPath; | |
| 48 | + | |
| 34 | 49 | @end |
| 35 | 50 | |
| 36 | 51 | NS_ASSUME_NONNULL_END |
| ... | ... | @@ -42,6 +57,10 @@ NS_ASSUME_NONNULL_BEGIN |
| 42 | 57 | |
| 43 | 58 | @interface CNLiveBOrganizationSelectedCell : UITableViewCell |
| 44 | 59 | |
| 60 | +@property (strong, nonatomic) NSIndexPath *indexPath; | |
| 61 | + | |
| 62 | +- (void)editUIWithIndexPath:(NSIndexPath *)indexPath; | |
| 63 | + | |
| 45 | 64 | @end |
| 46 | 65 | |
| 47 | 66 | NS_ASSUME_NONNULL_END | ... | ... |
CNLiveOrganizationValidationModule/Classes/CNLiveOrganizationValidationModule/View/CNLiveBOrganizationContentCell.m
0 → 100644
| 1 | +// | |
| 2 | +// CNLiveBOrganizationTFCell.m | |
| 3 | +// CNLiveOrganizationValidationModule | |
| 4 | +// | |
| 5 | +// Created by 梁星国 on 2020/4/10. | |
| 6 | +// | |
| 7 | + | |
| 8 | +#import "CNLiveBOrganizationContentCell.h" | |
| 9 | +#import <Masonry/Masonry.h> | |
| 10 | +#import "UIImage+OrganizationValidation.h" | |
| 11 | +#import <CNLiveBaseKit/CNLiveBaseKit.h> | |
| 12 | +#import "CNLiveBOrganizationTextField.h" | |
| 13 | + | |
| 14 | +#pragma mark - | |
| 15 | +#pragma mark - UITextField 类型 | |
| 16 | + | |
| 17 | +@interface CNLiveBOrganizationTFCell() | |
| 18 | + | |
| 19 | +/** 头部*/ | |
| 20 | +@property (nonatomic, strong) UILabel *titleL; | |
| 21 | +/** 内容*/ | |
| 22 | +@property (nonatomic, strong) UILabel *contentL; | |
| 23 | + | |
| 24 | +@end | |
| 25 | + | |
| 26 | +@implementation CNLiveBOrganizationTFCell | |
| 27 | + | |
| 28 | + | |
| 29 | +- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier | |
| 30 | +{ | |
| 31 | + self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]; | |
| 32 | + if (self) { | |
| 33 | + [self setupUI]; | |
| 34 | + } | |
| 35 | + return self; | |
| 36 | +} | |
| 37 | + | |
| 38 | +- (void)awakeFromNib { | |
| 39 | + [super awakeFromNib]; | |
| 40 | + [self setupUI]; | |
| 41 | + | |
| 42 | +} | |
| 43 | + | |
| 44 | +- (void)layoutSubviews { | |
| 45 | + [super layoutSubviews]; | |
| 46 | + | |
| 47 | + [self layoutUI]; | |
| 48 | +} | |
| 49 | + | |
| 50 | + | |
| 51 | +#pragma mark - ***setupUI*** | |
| 52 | +- (void)setupUI { | |
| 53 | + | |
| 54 | + [self setBackgroundColor:[UIColor whiteColor]]; | |
| 55 | + [self addSubview:self.contentTF]; | |
| 56 | + [self addSubview:self.titleL]; | |
| 57 | + [self addSubview:self.contentL]; | |
| 58 | + | |
| 59 | + [[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(textFieldTextChange:) name:UITextFieldTextDidChangeNotification object:nil]; | |
| 60 | + | |
| 61 | +} | |
| 62 | + | |
| 63 | +#pragma mark - ***layoutUI*** | |
| 64 | +- (void)layoutUI { | |
| 65 | + | |
| 66 | + __weak typeof(self) weakSelf = self; | |
| 67 | + [self.titleL mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 68 | + make.left.equalTo(weakSelf.mas_left).offset(10); | |
| 69 | + make.top.equalTo(weakSelf.mas_top).offset(8); | |
| 70 | + make.width.mas_equalTo(72); | |
| 71 | + make.height.mas_equalTo(28); | |
| 72 | + }]; | |
| 73 | + | |
| 74 | + [self.contentTF mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 75 | + make.left.equalTo(weakSelf.titleL.mas_right).offset(15); | |
| 76 | + make.centerY.equalTo(weakSelf.titleL.mas_centerY); | |
| 77 | + make.right.equalTo(weakSelf.mas_right).offset(-30.5); | |
| 78 | + make.height.mas_equalTo(28); | |
| 79 | + }]; | |
| 80 | + | |
| 81 | + [self.contentL mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 82 | + make.left.equalTo(weakSelf.contentTF.mas_left); | |
| 83 | + make.top.equalTo(weakSelf.contentTF.mas_bottom).offset(6); | |
| 84 | + make.width.mas_equalTo(weakSelf.contentTF.mas_width); | |
| 85 | + make.height.mas_equalTo(11); | |
| 86 | + }]; | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | +} | |
| 91 | + | |
| 92 | +#pragma mark - editUI | |
| 93 | + | |
| 94 | +- (void)editUIWithIndexPath:(NSIndexPath *)indexPath { | |
| 95 | + | |
| 96 | + if (!indexPath) { | |
| 97 | + return; | |
| 98 | + } | |
| 99 | + | |
| 100 | + self.indexPath = indexPath; | |
| 101 | + | |
| 102 | + if (indexPath.section == 0) { | |
| 103 | + if (indexPath.row == 0) { | |
| 104 | + | |
| 105 | + NSString *titleStr = @"* 公司全称"; | |
| 106 | + NSMutableAttributedString *string = [[NSMutableAttributedString alloc] initWithString:titleStr attributes:@{NSFontAttributeName: [UIFont systemFontOfSize:12],NSForegroundColorAttributeName:RGBOF(0x333333)}]; | |
| 107 | + NSRange range = [titleStr rangeOfString:@"*"]; | |
| 108 | + [string addAttributes:@{NSFontAttributeName: [UIFont systemFontOfSize:12], NSForegroundColorAttributeName: RGBOF(0xf3565f)} range:range]; | |
| 109 | + self.titleL.attributedText = string; | |
| 110 | + self.contentL.text = @"公司注册全称与营业执照一致"; | |
| 111 | + self.contentTF.placeholder = @"请输入公司全称"; | |
| 112 | + self.contentTF.tfIndexPath = indexPath; | |
| 113 | + | |
| 114 | + | |
| 115 | + }else if (indexPath.row == 2) { | |
| 116 | + | |
| 117 | + NSString *titleStr = @"* 企业简称"; | |
| 118 | + NSMutableAttributedString *string = [[NSMutableAttributedString alloc] initWithString:titleStr attributes:@{NSFontAttributeName: [UIFont systemFontOfSize:12],NSForegroundColorAttributeName:RGBOF(0x333333)}]; | |
| 119 | + NSRange range = [titleStr rangeOfString:@"*"]; | |
| 120 | + [string addAttributes:@{NSFontAttributeName: [UIFont systemFontOfSize:12], NSForegroundColorAttributeName: RGBOF(0xf3565f)} range:range]; | |
| 121 | + self.titleL.attributedText = string; | |
| 122 | + self.contentL.text = @""; | |
| 123 | + self.contentTF.placeholder = @"请输入企业简称"; | |
| 124 | + self.contentTF.tfIndexPath = indexPath; | |
| 125 | + | |
| 126 | + }else if (indexPath.row == 3) { | |
| 127 | + | |
| 128 | + NSString *titleStr = @"* 企业代码"; | |
| 129 | + NSMutableAttributedString *string = [[NSMutableAttributedString alloc] initWithString:titleStr attributes:@{NSFontAttributeName: [UIFont systemFontOfSize:12],NSForegroundColorAttributeName:RGBOF(0x333333)}]; | |
| 130 | + NSRange range = [titleStr rangeOfString:@"*"]; | |
| 131 | + [string addAttributes:@{NSFontAttributeName: [UIFont systemFontOfSize:12], NSForegroundColorAttributeName: RGBOF(0xf3565f)} range:range]; | |
| 132 | + self.titleL.attributedText = string; | |
| 133 | + self.contentL.text = @""; | |
| 134 | + self.contentTF.placeholder = @"请输入企业代码"; | |
| 135 | + self.contentTF.tfIndexPath = indexPath; | |
| 136 | + | |
| 137 | + }else if (indexPath.row == 5) { | |
| 138 | + | |
| 139 | + NSString *titleStr = @"企业地址"; | |
| 140 | + NSMutableAttributedString *string = [[NSMutableAttributedString alloc] initWithString:titleStr attributes:@{NSFontAttributeName: [UIFont systemFontOfSize:12],NSForegroundColorAttributeName:RGBOF(0x333333)}]; | |
| 141 | + self.titleL.attributedText = string; | |
| 142 | + self.contentL.text = @""; | |
| 143 | + self.contentTF.placeholder = @"请输入企业地址"; | |
| 144 | + self.contentTF.tfIndexPath = indexPath; | |
| 145 | + | |
| 146 | + }else if (indexPath.row == 7) { | |
| 147 | + | |
| 148 | + NSString *titleStr = @"* 网站"; | |
| 149 | + NSMutableAttributedString *string = [[NSMutableAttributedString alloc] initWithString:titleStr attributes:@{NSFontAttributeName: [UIFont systemFontOfSize:12],NSForegroundColorAttributeName:RGBOF(0x333333)}]; | |
| 150 | + NSRange range = [titleStr rangeOfString:@"*"]; | |
| 151 | + [string addAttributes:@{NSFontAttributeName: [UIFont systemFontOfSize:12], NSForegroundColorAttributeName: RGBOF(0xf3565f)} range:range]; | |
| 152 | + self.titleL.attributedText = string; | |
| 153 | + self.contentL.text = @""; | |
| 154 | + self.contentTF.placeholder = @"请输入企业网站访问链接"; | |
| 155 | + self.contentTF.tfIndexPath = indexPath; | |
| 156 | + | |
| 157 | + }else if (indexPath.row == 8) { | |
| 158 | + NSString *titleStr = @"* 企业法人"; | |
| 159 | + NSMutableAttributedString *string = [[NSMutableAttributedString alloc] initWithString:titleStr attributes:@{NSFontAttributeName: [UIFont systemFontOfSize:12],NSForegroundColorAttributeName:RGBOF(0x333333)}]; | |
| 160 | + NSRange range = [titleStr rangeOfString:@"*"]; | |
| 161 | + [string addAttributes:@{NSFontAttributeName: [UIFont systemFontOfSize:12], NSForegroundColorAttributeName: RGBOF(0xf3565f)} range:range]; | |
| 162 | + self.titleL.attributedText = string; | |
| 163 | + self.contentL.text = @""; | |
| 164 | + self.contentTF.placeholder = @"请输入企业法人姓名"; | |
| 165 | + self.contentTF.tfIndexPath = indexPath; | |
| 166 | + | |
| 167 | + }else if (indexPath.row == 9) { | |
| 168 | + NSString *titleStr = @"* 联系人"; | |
| 169 | + NSMutableAttributedString *string = [[NSMutableAttributedString alloc] initWithString:titleStr attributes:@{NSFontAttributeName: [UIFont systemFontOfSize:12],NSForegroundColorAttributeName:RGBOF(0x333333)}]; | |
| 170 | + NSRange range = [titleStr rangeOfString:@"*"]; | |
| 171 | + [string addAttributes:@{NSFontAttributeName: [UIFont systemFontOfSize:12], NSForegroundColorAttributeName: RGBOF(0xf3565f)} range:range]; | |
| 172 | + self.titleL.attributedText = string; | |
| 173 | + self.contentL.text = @""; | |
| 174 | + self.contentTF.placeholder = @"请输入企业联系人姓名"; | |
| 175 | + self.contentTF.tfIndexPath = indexPath; | |
| 176 | + | |
| 177 | + }else if (indexPath.row == 10) { | |
| 178 | + NSString *titleStr = @"合同编号"; | |
| 179 | + NSMutableAttributedString *string = [[NSMutableAttributedString alloc] initWithString:titleStr attributes:@{NSFontAttributeName: [UIFont systemFontOfSize:12],NSForegroundColorAttributeName:RGBOF(0x333333)}]; | |
| 180 | + self.titleL.attributedText = string; | |
| 181 | + self.contentL.text = @""; | |
| 182 | + self.contentTF.placeholder = @"请输入合同编号"; | |
| 183 | + self.contentTF.tfIndexPath = indexPath; | |
| 184 | + | |
| 185 | + }else if (indexPath.row == 11) { | |
| 186 | + NSString *titleStr = @"* 营业执照号"; | |
| 187 | + NSMutableAttributedString *string = [[NSMutableAttributedString alloc] initWithString:titleStr attributes:@{NSFontAttributeName: [UIFont systemFontOfSize:12],NSForegroundColorAttributeName:RGBOF(0x333333)}]; | |
| 188 | + NSRange range = [titleStr rangeOfString:@"*"]; | |
| 189 | + [string addAttributes:@{NSFontAttributeName: [UIFont systemFontOfSize:12], NSForegroundColorAttributeName: RGBOF(0xf3565f)} range:range]; | |
| 190 | + self.titleL.attributedText = string; | |
| 191 | + self.contentL.text = @""; | |
| 192 | + self.contentTF.placeholder = @"请输入营业执照号"; | |
| 193 | + self.contentTF.tfIndexPath = indexPath; | |
| 194 | + | |
| 195 | + }else { | |
| 196 | + self.titleL.text = @""; | |
| 197 | + self.contentL.text = @""; | |
| 198 | + self.contentTF.placeholder = @""; | |
| 199 | + self.contentTF.tfIndexPath = indexPath; | |
| 200 | + return; | |
| 201 | + } | |
| 202 | + }else { | |
| 203 | + return; | |
| 204 | + } | |
| 205 | + | |
| 206 | + | |
| 207 | +} | |
| 208 | + | |
| 209 | + | |
| 210 | +#pragma mark - ***事件实现*** | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | +#pragma mark - ***监听实现*** | |
| 215 | +- (void)textFieldTextChange:(NSNotification *)notification{ | |
| 216 | + CNLiveBOrganizationTextField *textField = (CNLiveBOrganizationTextField *)notification.object; | |
| 217 | + if (textField) { | |
| 218 | + if (textField.contentLengthMax == 0) { | |
| 219 | + textField.contentLengthMax = 100; | |
| 220 | + } | |
| 221 | + if (textField.text.length > textField.contentLengthMax) { | |
| 222 | + NSRange range = NSMakeRange(0, textField.contentLengthMax); | |
| 223 | + textField.text = [textField.text substringWithRange:range]; | |
| 224 | + } | |
| 225 | + } | |
| 226 | + | |
| 227 | +} | |
| 228 | + | |
| 229 | +#pragma mark - ***私有方法*** | |
| 230 | +#pragma mark - ***懒加载*** | |
| 231 | + | |
| 232 | +/*** 头部 ***/ | |
| 233 | +- (UILabel *)titleL { | |
| 234 | + | |
| 235 | + if (!_titleL) { | |
| 236 | + _titleL = [[UILabel alloc]init]; | |
| 237 | + _titleL.font = [UIFont systemFontOfSize:12]; | |
| 238 | + _titleL.numberOfLines = 1; | |
| 239 | + } | |
| 240 | + return _titleL; | |
| 241 | + | |
| 242 | +} | |
| 243 | + | |
| 244 | +/*** 内容 ***/ | |
| 245 | +- (CNLiveBOrganizationTextField *)contentTF { | |
| 246 | + | |
| 247 | + if (!_contentTF) { | |
| 248 | + _contentTF = [[CNLiveBOrganizationTextField alloc]init]; | |
| 249 | + _contentTF.font = [UIFont systemFontOfSize:12]; | |
| 250 | + _contentTF.layer.masksToBounds = YES; | |
| 251 | + _contentTF.layer.cornerRadius = 5; | |
| 252 | + _contentTF.layer.borderColor = RGBOF(0xc1c1c1).CGColor; | |
| 253 | + _contentTF.layer.borderWidth = 0.5; | |
| 254 | + _contentTF.textAlignment = NSTextAlignmentLeft; | |
| 255 | + } | |
| 256 | + return _contentTF; | |
| 257 | +} | |
| 258 | + | |
| 259 | +/*** 内容 ***/ | |
| 260 | +- (UILabel *)contentL { | |
| 261 | + | |
| 262 | + if (!_contentL) { | |
| 263 | + _contentL = [[UILabel alloc]init]; | |
| 264 | + _contentL.font = [UIFont systemFontOfSize:11]; | |
| 265 | + _contentL.textAlignment = NSTextAlignmentLeft; | |
| 266 | + _contentL.textColor = RGBOF(0x999999); | |
| 267 | + _contentL.numberOfLines = 1; | |
| 268 | + } | |
| 269 | + return _contentL; | |
| 270 | +} | |
| 271 | + | |
| 272 | + | |
| 273 | + | |
| 274 | +- (void)setSelected:(BOOL)selected animated:(BOOL)animated { | |
| 275 | + [super setSelected:selected animated:animated]; | |
| 276 | + | |
| 277 | + // Configure the view for the selected state | |
| 278 | +} | |
| 279 | + | |
| 280 | +@end | |
| 281 | + | |
| 282 | + | |
| 283 | +#pragma mark - | |
| 284 | +#pragma mark - UITextView 类型 | |
| 285 | + | |
| 286 | +@interface CNLiveBOrganizationTViewCell() | |
| 287 | + | |
| 288 | +/** 头部*/ | |
| 289 | +@property (nonatomic, strong) UILabel *titleL; | |
| 290 | + | |
| 291 | + | |
| 292 | +@end | |
| 293 | + | |
| 294 | +@implementation CNLiveBOrganizationTViewCell | |
| 295 | + | |
| 296 | + | |
| 297 | +- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier | |
| 298 | +{ | |
| 299 | + self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]; | |
| 300 | + if (self) { | |
| 301 | + [self setupUI]; | |
| 302 | + } | |
| 303 | + return self; | |
| 304 | +} | |
| 305 | + | |
| 306 | +- (void)awakeFromNib { | |
| 307 | + [super awakeFromNib]; | |
| 308 | + [self setupUI]; | |
| 309 | + | |
| 310 | +} | |
| 311 | + | |
| 312 | +- (void)layoutSubviews { | |
| 313 | + [super layoutSubviews]; | |
| 314 | + | |
| 315 | + [self layoutUI]; | |
| 316 | +} | |
| 317 | + | |
| 318 | + | |
| 319 | +#pragma mark - ***setupUI*** | |
| 320 | +- (void)setupUI { | |
| 321 | + | |
| 322 | + [self setBackgroundColor:[UIColor whiteColor]]; | |
| 323 | + [self addSubview:self.contentTV]; | |
| 324 | + [self addSubview:self.titleL]; | |
| 325 | + | |
| 326 | + [[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(textViewTextChange:) name:UITextViewTextDidChangeNotification object:nil]; | |
| 327 | + | |
| 328 | +} | |
| 329 | + | |
| 330 | +#pragma mark - ***layoutUI*** | |
| 331 | +- (void)layoutUI { | |
| 332 | + | |
| 333 | + __weak typeof(self) weakSelf = self; | |
| 334 | + | |
| 335 | + [self.titleL mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 336 | + make.left.equalTo(weakSelf.mas_left).offset(10); | |
| 337 | + make.top.equalTo(weakSelf.mas_top).offset(8); | |
| 338 | + make.width.mas_equalTo(72); | |
| 339 | + make.height.mas_equalTo(28); | |
| 340 | + }]; | |
| 341 | + | |
| 342 | + | |
| 343 | + | |
| 344 | +} | |
| 345 | + | |
| 346 | +#pragma mark - editUI | |
| 347 | + | |
| 348 | +- (void)editUIWithIndexPath:(NSIndexPath *)indexPath { | |
| 349 | + | |
| 350 | + if (!indexPath) { | |
| 351 | + return; | |
| 352 | + } | |
| 353 | + | |
| 354 | + self.indexPath = indexPath; | |
| 355 | + | |
| 356 | + if (indexPath.section == 0) { | |
| 357 | + if (indexPath.row == 4) { | |
| 358 | + NSString *titleStr = @"* 企业简介"; | |
| 359 | + NSMutableAttributedString *string = [[NSMutableAttributedString alloc] initWithString:titleStr attributes:@{NSFontAttributeName: [UIFont systemFontOfSize:12],NSForegroundColorAttributeName:RGBOF(0x333333)}]; | |
| 360 | + NSRange range = [titleStr rangeOfString:@"*"]; | |
| 361 | + [string addAttributes:@{NSFontAttributeName: [UIFont systemFontOfSize:12], NSForegroundColorAttributeName: RGBOF(0xf3565f)} range:range]; | |
| 362 | + self.titleL.attributedText = string; | |
| 363 | + self.contentTV.placeholder = @"请输入企业简介(400字以内)"; | |
| 364 | + self.contentTV.placeholderFont = [UIFont systemFontOfSize:12]; | |
| 365 | + self.contentTV.placeholderColor = RGBOF(0xB9B9B9); | |
| 366 | + }else { | |
| 367 | + return; | |
| 368 | + } | |
| 369 | + }else { | |
| 370 | + return; | |
| 371 | + } | |
| 372 | + | |
| 373 | +} | |
| 374 | + | |
| 375 | + | |
| 376 | +#pragma mark - ***事件实现*** | |
| 377 | + | |
| 378 | +#pragma mark - ***监听实现*** | |
| 379 | +- (void)textViewTextChange:(NSNotification *)notification{ | |
| 380 | + CNLiveBOrganizationTextView *textView = (CNLiveBOrganizationTextView *)notification.object; | |
| 381 | + if (textView) { | |
| 382 | + if (textView.contentLengthMax == 0) { | |
| 383 | + textView.contentLengthMax = 400; | |
| 384 | + } | |
| 385 | + if (textView.text.length > textView.contentLengthMax) { | |
| 386 | + NSRange range = NSMakeRange(0, textView.contentLengthMax); | |
| 387 | + textView.text = [textView.text substringWithRange:range]; | |
| 388 | + } | |
| 389 | + } | |
| 390 | + | |
| 391 | +} | |
| 392 | + | |
| 393 | + | |
| 394 | + | |
| 395 | +#pragma mark - ***私有方法*** | |
| 396 | +#pragma mark - ***懒加载*** | |
| 397 | +/*** 头部 ***/ | |
| 398 | +- (UILabel *)titleL { | |
| 399 | + | |
| 400 | + if (!_titleL) { | |
| 401 | + _titleL = [[UILabel alloc]init]; | |
| 402 | + _titleL.font = [UIFont systemFontOfSize:12]; | |
| 403 | + _titleL.numberOfLines = 1; | |
| 404 | + } | |
| 405 | + return _titleL; | |
| 406 | + | |
| 407 | +} | |
| 408 | + | |
| 409 | +/*** 内容 ***/ | |
| 410 | +- (UITextView *)contentTV { | |
| 411 | + | |
| 412 | + if (!_contentTV) { | |
| 413 | + _contentTV = [[CNLiveBOrganizationTextView alloc]initWithFrame:CGRectMake(97, 8, KScreenWidth - 97 -29.5, 78)]; | |
| 414 | + _contentTV.font = [UIFont systemFontOfSize:12]; | |
| 415 | + _contentTV.layer.masksToBounds = YES; | |
| 416 | + _contentTV.layer.cornerRadius = 5; | |
| 417 | + _contentTV.layer.borderColor = RGBOF(0xc1c1c1).CGColor; | |
| 418 | + _contentTV.layer.borderWidth = 0.5; | |
| 419 | + _contentTV.textAlignment = NSTextAlignmentLeft; | |
| 420 | + } | |
| 421 | + return _contentTV; | |
| 422 | +} | |
| 423 | + | |
| 424 | + | |
| 425 | +- (void)setSelected:(BOOL)selected animated:(BOOL)animated { | |
| 426 | + [super setSelected:selected animated:animated]; | |
| 427 | + | |
| 428 | + // Configure the view for the selected state | |
| 429 | +} | |
| 430 | + | |
| 431 | +@end | |
| 432 | + | |
| 433 | + | |
| 434 | +#pragma mark - | |
| 435 | +#pragma mark - CNLiveBOrganizationSelectedCell 类型 | |
| 436 | + | |
| 437 | +@interface CNLiveBOrganizationSelectedCell() | |
| 438 | +/** 头部*/ | |
| 439 | +@property (nonatomic, strong) UILabel *titleL; | |
| 440 | +/** 认证*/ | |
| 441 | +@property (nonatomic, strong) UIButton *selectedBtn; | |
| 442 | + | |
| 443 | +@end | |
| 444 | + | |
| 445 | +@implementation CNLiveBOrganizationSelectedCell | |
| 446 | + | |
| 447 | + | |
| 448 | +- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier | |
| 449 | +{ | |
| 450 | + self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]; | |
| 451 | + if (self) { | |
| 452 | + [self setupUI]; | |
| 453 | + } | |
| 454 | + return self; | |
| 455 | +} | |
| 456 | + | |
| 457 | +- (void)awakeFromNib { | |
| 458 | + [super awakeFromNib]; | |
| 459 | + [self setupUI]; | |
| 460 | + | |
| 461 | +} | |
| 462 | + | |
| 463 | +- (void)layoutSubviews { | |
| 464 | + [super layoutSubviews]; | |
| 465 | + | |
| 466 | + [self layoutUI]; | |
| 467 | +} | |
| 468 | + | |
| 469 | + | |
| 470 | +#pragma mark - ***setupUI*** | |
| 471 | +- (void)setupUI { | |
| 472 | + | |
| 473 | + [self setBackgroundColor:[UIColor whiteColor]]; | |
| 474 | + [self addSubview:self.titleL]; | |
| 475 | + [self addSubview:self.selectedBtn]; | |
| 476 | + | |
| 477 | + self.titleL.text = @"* 企业类型"; | |
| 478 | + [self.selectedBtn setBackgroundColor:[UIColor yellowColor]]; | |
| 479 | + | |
| 480 | +} | |
| 481 | + | |
| 482 | +#pragma mark - ***layoutUI*** | |
| 483 | +- (void)layoutUI { | |
| 484 | + | |
| 485 | + __weak typeof(self) weakSelf = self; | |
| 486 | + | |
| 487 | + [self.selectedBtn mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 488 | + make.left.equalTo(weakSelf.titleL.mas_right).offset(16); | |
| 489 | + make.top.equalTo(weakSelf.mas_top).offset(8); | |
| 490 | + make.right.equalTo(weakSelf.mas_right).offset(-30.5); | |
| 491 | + make.height.mas_equalTo(28); | |
| 492 | + }]; | |
| 493 | + | |
| 494 | + [self.titleL mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 495 | + make.left.equalTo(weakSelf.mas_left).offset(10); | |
| 496 | + make.centerY.equalTo(weakSelf.selectedBtn.mas_centerY); | |
| 497 | + make.width.mas_equalTo(72); | |
| 498 | + make.height.mas_equalTo(28); | |
| 499 | + }]; | |
| 500 | + | |
| 501 | + | |
| 502 | + | |
| 503 | +} | |
| 504 | + | |
| 505 | +#pragma mark - editUI | |
| 506 | +- (void)editUIWithIndexPath:(NSIndexPath *)indexPath { | |
| 507 | + | |
| 508 | + if (!indexPath) { | |
| 509 | + return; | |
| 510 | + } | |
| 511 | + | |
| 512 | + self.indexPath = indexPath; | |
| 513 | + | |
| 514 | + if (indexPath.section == 0) { | |
| 515 | + if (indexPath.row == 6) { | |
| 516 | + NSString *titleStr = @"* 企业类型"; | |
| 517 | + NSMutableAttributedString *string = [[NSMutableAttributedString alloc] initWithString:titleStr attributes:@{NSFontAttributeName: [UIFont systemFontOfSize:12],NSForegroundColorAttributeName:RGBOF(0x333333)}]; | |
| 518 | + NSRange range = [titleStr rangeOfString:@"*"]; | |
| 519 | + [string addAttributes:@{NSFontAttributeName: [UIFont systemFontOfSize:12], NSForegroundColorAttributeName: RGBOF(0xf3565f)} range:range]; | |
| 520 | + self.titleL.attributedText = string; | |
| 521 | + | |
| 522 | + }else { | |
| 523 | + return; | |
| 524 | + } | |
| 525 | + }else { | |
| 526 | + return; | |
| 527 | + } | |
| 528 | + | |
| 529 | +} | |
| 530 | + | |
| 531 | + | |
| 532 | +#pragma mark - ***事件实现*** | |
| 533 | + | |
| 534 | + | |
| 535 | + | |
| 536 | + | |
| 537 | +#pragma mark - ***私有方法*** | |
| 538 | +#pragma mark - ***懒加载*** | |
| 539 | +/*** 头部 ***/ | |
| 540 | +- (UILabel *)titleL { | |
| 541 | + | |
| 542 | + if (!_titleL) { | |
| 543 | + _titleL = [[UILabel alloc]init]; | |
| 544 | + _titleL.font = [UIFont systemFontOfSize:12]; | |
| 545 | + _titleL.numberOfLines = 1; | |
| 546 | + } | |
| 547 | + return _titleL; | |
| 548 | + | |
| 549 | +} | |
| 550 | + | |
| 551 | +/*** 内容 ***/ | |
| 552 | +- (UIButton *)selectedBtn { | |
| 553 | + | |
| 554 | + if (!_selectedBtn) { | |
| 555 | + _selectedBtn = [[UIButton alloc]init]; | |
| 556 | + _selectedBtn.titleLabel.font = [UIFont systemFontOfSize:12]; | |
| 557 | + _selectedBtn.layer.masksToBounds = YES; | |
| 558 | + _selectedBtn.layer.cornerRadius = 5; | |
| 559 | + _selectedBtn.layer.borderColor = RGBOF(0xc1c1c1).CGColor; | |
| 560 | + _selectedBtn.layer.borderWidth = 0.5; | |
| 561 | + } | |
| 562 | + return _selectedBtn; | |
| 563 | +} | |
| 564 | + | |
| 565 | + | |
| 566 | + | |
| 567 | +- (void)setSelected:(BOOL)selected animated:(BOOL)animated { | |
| 568 | + [super setSelected:selected animated:animated]; | |
| 569 | + | |
| 570 | + // Configure the view for the selected state | |
| 571 | +} | |
| 572 | + | |
| 573 | +@end | |
| 574 | + | |
| 575 | + | |
| 576 | +#pragma mark - | |
| 577 | +#pragma mark - CNLiveBOrganizationImageVSelectedCell 图片选择 | |
| 578 | + | |
| 579 | +@interface CNLiveBOrganizationImageVSelectedCell() | |
| 580 | +/** 图片*/ | |
| 581 | +@property (nonatomic, strong) UIImageView *contentImageView; | |
| 582 | +/** 头部*/ | |
| 583 | +@property (nonatomic, strong) UILabel *titleL; | |
| 584 | +/** 内容*/ | |
| 585 | +@property (nonatomic, strong) UILabel *contentL; | |
| 586 | + | |
| 587 | +@end | |
| 588 | + | |
| 589 | +@implementation CNLiveBOrganizationImageVSelectedCell | |
| 590 | + | |
| 591 | + | |
| 592 | +- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier | |
| 593 | +{ | |
| 594 | + self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]; | |
| 595 | + if (self) { | |
| 596 | + [self setupUI]; | |
| 597 | + } | |
| 598 | + return self; | |
| 599 | +} | |
| 600 | + | |
| 601 | +- (void)awakeFromNib { | |
| 602 | + [super awakeFromNib]; | |
| 603 | + [self setupUI]; | |
| 604 | + | |
| 605 | +} | |
| 606 | + | |
| 607 | +- (void)layoutSubviews { | |
| 608 | + [super layoutSubviews]; | |
| 609 | + | |
| 610 | + [self layoutUI]; | |
| 611 | +} | |
| 612 | + | |
| 613 | + | |
| 614 | +#pragma mark - ***setupUI*** | |
| 615 | +- (void)setupUI { | |
| 616 | + | |
| 617 | + | |
| 618 | + [self setBackgroundColor:[UIColor whiteColor]]; | |
| 619 | + [self addSubview:self.contentImageView]; | |
| 620 | + [self addSubview:self.titleL]; | |
| 621 | + [self addSubview:self.contentL]; | |
| 622 | + | |
| 623 | + //测试 | |
| 624 | + self.titleL.text = @"* 企业logo"; | |
| 625 | + self.contentL.text = @"请上传LOGO图片(尺寸100*100,图片大小5M以内"; | |
| 626 | + [self.contentImageView setBackgroundColor:[UIColor yellowColor]]; | |
| 627 | +} | |
| 628 | + | |
| 629 | +#pragma mark - ***layoutUI*** | |
| 630 | +- (void)layoutUI { | |
| 631 | + | |
| 632 | + __weak typeof(self) weakSelf = self; | |
| 633 | + | |
| 634 | + [self.titleL mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 635 | + make.left.equalTo(weakSelf.mas_left).offset(10); | |
| 636 | + make.top.equalTo(weakSelf.mas_top).offset(8); | |
| 637 | + make.width.mas_equalTo(72); | |
| 638 | + make.height.mas_equalTo(28); | |
| 639 | + }]; | |
| 640 | + | |
| 641 | + [self.contentImageView mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 642 | + make.left.equalTo(weakSelf.titleL.mas_right).offset(23); | |
| 643 | + make.top.equalTo(weakSelf.mas_top).offset(8); | |
| 644 | + make.width.mas_offset(60); | |
| 645 | + make.height.mas_equalTo(60); | |
| 646 | + }]; | |
| 647 | + | |
| 648 | + [self.contentL mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 649 | + make.left.equalTo(weakSelf.contentImageView.mas_left); | |
| 650 | + make.top.equalTo(weakSelf.contentImageView.mas_bottom).offset(6); | |
| 651 | + make.right.equalTo(weakSelf.mas_right).offset(-41); | |
| 652 | + make.bottom.equalTo(weakSelf.mas_bottom).offset(-8); | |
| 653 | + }]; | |
| 654 | + | |
| 655 | + | |
| 656 | +} | |
| 657 | + | |
| 658 | +#pragma mark - editUI | |
| 659 | + | |
| 660 | + | |
| 661 | +#pragma mark - ***事件实现*** | |
| 662 | + | |
| 663 | + | |
| 664 | + | |
| 665 | + | |
| 666 | +#pragma mark - ***私有方法*** | |
| 667 | +#pragma mark - ***懒加载*** | |
| 668 | +/*** 头部 ***/ | |
| 669 | +- (UILabel *)titleL { | |
| 670 | + | |
| 671 | + if (!_titleL) { | |
| 672 | + _titleL = [[UILabel alloc]init]; | |
| 673 | + _titleL.font = [UIFont systemFontOfSize:12]; | |
| 674 | + _titleL.numberOfLines = 1; | |
| 675 | + } | |
| 676 | + return _titleL; | |
| 677 | + | |
| 678 | +} | |
| 679 | + | |
| 680 | +/*** 内容 ***/ | |
| 681 | +- (UIImageView *)contentImageView { | |
| 682 | + | |
| 683 | + if (!_contentImageView) { | |
| 684 | + _contentImageView = [[UIImageView alloc]init]; | |
| 685 | + | |
| 686 | + } | |
| 687 | + return _contentImageView; | |
| 688 | +} | |
| 689 | + | |
| 690 | +/*** 内容 ***/ | |
| 691 | +- (UILabel *)contentL { | |
| 692 | + | |
| 693 | + if (!_contentL) { | |
| 694 | + _contentL = [[UILabel alloc]init]; | |
| 695 | + _contentL.font = [UIFont systemFontOfSize:11]; | |
| 696 | + _contentL.textAlignment = NSTextAlignmentLeft; | |
| 697 | + _contentL.textColor = RGBOF(0x999999); | |
| 698 | + _contentL.numberOfLines = 0; | |
| 699 | + [_contentL sizeToFit]; | |
| 700 | + } | |
| 701 | + return _contentL; | |
| 702 | +} | |
| 703 | + | |
| 704 | + | |
| 705 | + | |
| 706 | + | |
| 707 | + | |
| 708 | +- (void)setSelected:(BOOL)selected animated:(BOOL)animated { | |
| 709 | + [super setSelected:selected animated:animated]; | |
| 710 | + | |
| 711 | + // Configure the view for the selected state | |
| 712 | +} | |
| 713 | + | |
| 714 | +@end | ... | ... |
CNLiveOrganizationValidationModule/Classes/CNLiveOrganizationValidationModule/View/CNLiveBOrganizationDetailCell.h
0 → 100644
| 1 | +// | |
| 2 | +// CNLiveBOrganizationDetailCell.h | |
| 3 | +// CNLiveOrganizationValidationModule | |
| 4 | +// | |
| 5 | +// Created by 梁星国 on 2020/4/13. | |
| 6 | +// | |
| 7 | + | |
| 8 | +#import <UIKit/UIKit.h> | |
| 9 | + | |
| 10 | + | |
| 11 | +#define kCNLiveBOrganizationDetailCell @"CNLiveBOrganizationDetailCell" | |
| 12 | + | |
| 13 | +NS_ASSUME_NONNULL_BEGIN | |
| 14 | + | |
| 15 | +@interface CNLiveBOrganizationDetailCell : UITableViewCell | |
| 16 | + | |
| 17 | +@property (strong, nonatomic) NSIndexPath *indexPath; | |
| 18 | + | |
| 19 | +- (void)editUIWithIndexPath:(NSIndexPath *)indexPath; | |
| 20 | + | |
| 21 | +@end | |
| 22 | + | |
| 23 | +NS_ASSUME_NONNULL_END | |
| 24 | + | |
| 25 | +#define kCNLiveBOrganizationImageVDetailCell @"CNLiveBOrganizationImageVDetailCell" | |
| 26 | + | |
| 27 | +NS_ASSUME_NONNULL_BEGIN | |
| 28 | + | |
| 29 | +@interface CNLiveBOrganizationImageVDetailCell : UITableViewCell | |
| 30 | + | |
| 31 | +@property (strong, nonatomic) NSIndexPath *indexPath; | |
| 32 | + | |
| 33 | +- (void)editUIWithIndexPath:(NSIndexPath *)indexPath; | |
| 34 | + | |
| 35 | +@end | |
| 36 | + | |
| 37 | +NS_ASSUME_NONNULL_END | |
| 38 | + | ... | ... |
CNLiveOrganizationValidationModule/Classes/CNLiveOrganizationValidationModule/View/CNLiveBOrganizationDetailCell.m
0 → 100644
| 1 | +// | |
| 2 | +// CNLiveBOrganizationDetailCell.m | |
| 3 | +// CNLiveOrganizationValidationModule | |
| 4 | +// | |
| 5 | +// Created by 梁星国 on 2020/4/13. | |
| 6 | +// | |
| 7 | + | |
| 8 | +#import "CNLiveBOrganizationDetailCell.h" | |
| 9 | +#import <Masonry/Masonry.h> | |
| 10 | +#import "UIImage+OrganizationValidation.h" | |
| 11 | +#import <CNLiveBaseKit/CNLiveBaseKit.h> | |
| 12 | +#import "CNLiveBOrganizationTextField.h" | |
| 13 | +#import <SDWebImage/SDWebImage.h> | |
| 14 | + | |
| 15 | + | |
| 16 | +@interface CNLiveBOrganizationDetailCell() | |
| 17 | + | |
| 18 | +/** 内容*/ | |
| 19 | +@property (nonatomic, strong) UILabel *contentL; | |
| 20 | + | |
| 21 | +@end | |
| 22 | + | |
| 23 | +@implementation CNLiveBOrganizationDetailCell | |
| 24 | + | |
| 25 | +- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier | |
| 26 | +{ | |
| 27 | + self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]; | |
| 28 | + if (self) { | |
| 29 | + [self setupUI]; | |
| 30 | + } | |
| 31 | + return self; | |
| 32 | +} | |
| 33 | + | |
| 34 | +- (void)awakeFromNib { | |
| 35 | + [super awakeFromNib]; | |
| 36 | + [self setupUI]; | |
| 37 | + | |
| 38 | +} | |
| 39 | + | |
| 40 | +- (void)layoutSubviews { | |
| 41 | + [super layoutSubviews]; | |
| 42 | + | |
| 43 | + [self layoutUI]; | |
| 44 | +} | |
| 45 | + | |
| 46 | + | |
| 47 | +#pragma mark - ***setupUI*** | |
| 48 | +- (void)setupUI { | |
| 49 | + | |
| 50 | + [self setBackgroundColor:[UIColor whiteColor]]; | |
| 51 | + [self addSubview:self.contentL]; | |
| 52 | + | |
| 53 | +} | |
| 54 | + | |
| 55 | +#pragma mark - ***layoutUI*** | |
| 56 | +- (void)layoutUI { | |
| 57 | + | |
| 58 | + __weak typeof(self) weakSelf = self; | |
| 59 | + [self.contentL mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 60 | + make.left.equalTo(weakSelf.mas_left).offset(10); | |
| 61 | + make.top.equalTo(weakSelf.mas_top).offset(10); | |
| 62 | + make.right.equalTo(weakSelf.mas_right).offset(-10); | |
| 63 | + make.bottom.equalTo(weakSelf.mas_bottom).offset(-10); | |
| 64 | + }]; | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | +} | |
| 69 | + | |
| 70 | + | |
| 71 | +#pragma mark - ***事件实现*** | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | +#pragma mark - ***监听实现*** | |
| 76 | + | |
| 77 | +#pragma mark - ***editUI** | |
| 78 | +- (void)editUIWithIndexPath:(NSIndexPath *)indexPath { | |
| 79 | + | |
| 80 | + | |
| 81 | + if (!indexPath) { | |
| 82 | + return; | |
| 83 | + } | |
| 84 | + | |
| 85 | + self.indexPath = indexPath; | |
| 86 | + | |
| 87 | + if (indexPath.section == 0) { | |
| 88 | + if (indexPath.row == 0) { | |
| 89 | + NSString *titleStr = @"公司全称:"; | |
| 90 | + NSMutableAttributedString *str = [self returnAllContentWithTitle:titleStr content:@"测试测试测测"]; | |
| 91 | + self.contentL.attributedText = str; | |
| 92 | + | |
| 93 | + | |
| 94 | + }else if (indexPath.row == 2) { | |
| 95 | + | |
| 96 | + NSString *titleStr = @"企业简称:"; | |
| 97 | + NSMutableAttributedString *str = [self returnAllContentWithTitle:titleStr content:@"测试测试测测发达发大水范德萨范德萨范德萨范德萨范德萨范德萨范德萨发"]; | |
| 98 | + self.contentL.attributedText = str; | |
| 99 | + | |
| 100 | + | |
| 101 | + }else if (indexPath.row == 3) { | |
| 102 | + | |
| 103 | + NSString *titleStr = @"企业代码:"; | |
| 104 | + NSMutableAttributedString *str = [self returnAllContentWithTitle:titleStr content:@"测试测试测测范德萨范德萨发大水发大厦范德萨发大水发大水"]; | |
| 105 | + self.contentL.attributedText = str; | |
| 106 | + | |
| 107 | + }else if (indexPath.row == 4) { | |
| 108 | + | |
| 109 | + NSString *titleStr = @"企业简介:"; | |
| 110 | + NSMutableAttributedString *str = [self returnAllContentWithTitle:titleStr content:@"测试测试测测"]; | |
| 111 | + self.contentL.attributedText = str; | |
| 112 | + | |
| 113 | + }else if (indexPath.row == 5) { | |
| 114 | + | |
| 115 | + NSString *titleStr = @"企业类型:"; | |
| 116 | + NSMutableAttributedString *str = [self returnAllContentWithTitle:titleStr content:@"测试测试测测"]; | |
| 117 | + self.contentL.attributedText = str; | |
| 118 | + | |
| 119 | + }else if (indexPath.row == 6) { | |
| 120 | + | |
| 121 | + NSString *titleStr = @"网站:"; | |
| 122 | + NSMutableAttributedString *str = [self returnAllContentWithTitle:titleStr content:@"测试测试测测"]; | |
| 123 | + self.contentL.attributedText = str; | |
| 124 | + | |
| 125 | + }else if (indexPath.row == 7) { | |
| 126 | + | |
| 127 | + NSString *titleStr = @"网站:"; | |
| 128 | + NSMutableAttributedString *str = [self returnAllContentWithTitle:titleStr content:@"测试测试测测"]; | |
| 129 | + self.contentL.attributedText = str; | |
| 130 | + | |
| 131 | + }else if (indexPath.row == 8) { | |
| 132 | + NSString *titleStr = @"企业法人:"; | |
| 133 | + NSMutableAttributedString *str = [self returnAllContentWithTitle:titleStr content:@"测试测试测测"]; | |
| 134 | + self.contentL.attributedText = str; | |
| 135 | + | |
| 136 | + }else if (indexPath.row == 9) { | |
| 137 | + NSString *titleStr = @"联系人:"; | |
| 138 | + NSMutableAttributedString *str = [self returnAllContentWithTitle:titleStr content:@"测试测试测测"]; | |
| 139 | + self.contentL.attributedText = str; | |
| 140 | + | |
| 141 | + }else if (indexPath.row == 10) { | |
| 142 | + NSString *titleStr = @"合同编号:"; | |
| 143 | + NSMutableAttributedString *str = [self returnAllContentWithTitle:titleStr content:@"测试测试测测"]; | |
| 144 | + self.contentL.attributedText = str; | |
| 145 | + | |
| 146 | + }else if (indexPath.row == 11) { | |
| 147 | + NSString *titleStr = @"营业执照号:"; | |
| 148 | + NSMutableAttributedString *str = [self returnAllContentWithTitle:titleStr content:@"测试测试测测"]; | |
| 149 | + self.contentL.attributedText = str; | |
| 150 | + | |
| 151 | + }else { | |
| 152 | + | |
| 153 | + } | |
| 154 | + }else { | |
| 155 | + | |
| 156 | + } | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | +} | |
| 161 | + | |
| 162 | + | |
| 163 | +#pragma mark - ***私有方法*** | |
| 164 | +- (NSMutableAttributedString *)returnAllContentWithTitle:(NSString *)title content:(NSString *)content { | |
| 165 | + NSString *titleStr = [NSString stringWithFormat:@"%@",title ? title : @""]; | |
| 166 | + NSString *contentStr = [NSString stringWithFormat:@"%@ %@",title ? title : @"",content ? content : @""]; | |
| 167 | + NSMutableAttributedString *allStr = [[NSMutableAttributedString alloc] initWithString:contentStr attributes:@{NSFontAttributeName: [UIFont systemFontOfSize:12],NSForegroundColorAttributeName: RGBOF(0xB9B9B9)}]; | |
| 168 | + NSRange rang = [contentStr rangeOfString:titleStr]; | |
| 169 | + [allStr addAttributes:@{NSForegroundColorAttributeName: RGBOF(0x333333)} range:rang]; | |
| 170 | + return allStr; | |
| 171 | + | |
| 172 | +} | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | +#pragma mark - ***懒加载*** | |
| 177 | + | |
| 178 | + | |
| 179 | +/*** 内容 ***/ | |
| 180 | +- (UILabel *)contentL { | |
| 181 | + | |
| 182 | + if (!_contentL) { | |
| 183 | + _contentL = [[UILabel alloc]init]; | |
| 184 | + _contentL.font = [UIFont systemFontOfSize:12]; | |
| 185 | + _contentL.textAlignment = NSTextAlignmentLeft; | |
| 186 | + _contentL.textColor = RGBOF(0xB9B9B9); | |
| 187 | + _contentL.numberOfLines = 0; | |
| 188 | + } | |
| 189 | + return _contentL; | |
| 190 | +} | |
| 191 | + | |
| 192 | + | |
| 193 | +- (void)setSelected:(BOOL)selected animated:(BOOL)animated { | |
| 194 | + [super setSelected:selected animated:animated]; | |
| 195 | + | |
| 196 | + // Configure the view for the selected state | |
| 197 | +} | |
| 198 | + | |
| 199 | +@end | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | +@interface CNLiveBOrganizationImageVDetailCell() | |
| 204 | + | |
| 205 | +/** 头部*/ | |
| 206 | +@property (nonatomic, strong) UILabel *titleL; | |
| 207 | +/** 图片内容*/ | |
| 208 | +@property (nonatomic, strong) UIImageView *contentImageV; | |
| 209 | + | |
| 210 | +@end | |
| 211 | + | |
| 212 | +@implementation CNLiveBOrganizationImageVDetailCell | |
| 213 | + | |
| 214 | +- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier | |
| 215 | +{ | |
| 216 | + self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]; | |
| 217 | + if (self) { | |
| 218 | + [self setupUI]; | |
| 219 | + } | |
| 220 | + return self; | |
| 221 | +} | |
| 222 | + | |
| 223 | +- (void)awakeFromNib { | |
| 224 | + [super awakeFromNib]; | |
| 225 | + [self setupUI]; | |
| 226 | + | |
| 227 | +} | |
| 228 | + | |
| 229 | +- (void)layoutSubviews { | |
| 230 | + [super layoutSubviews]; | |
| 231 | + | |
| 232 | + [self layoutUI]; | |
| 233 | +} | |
| 234 | + | |
| 235 | + | |
| 236 | +#pragma mark - ***setupUI*** | |
| 237 | +- (void)setupUI { | |
| 238 | + | |
| 239 | + [self setBackgroundColor:[UIColor whiteColor]]; | |
| 240 | + [self addSubview:self.titleL]; | |
| 241 | + [self addSubview:self.contentImageV]; | |
| 242 | + self.contentImageV.frame = CGRectMake(95, 10, 60, 60); | |
| 243 | +} | |
| 244 | + | |
| 245 | +#pragma mark - ***layoutUI*** | |
| 246 | +- (void)layoutUI { | |
| 247 | + | |
| 248 | + __weak typeof(self) weakSelf = self; | |
| 249 | + [self.titleL mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 250 | + make.left.equalTo(weakSelf.mas_left).offset(10); | |
| 251 | + make.top.equalTo(weakSelf.mas_top).offset(10); | |
| 252 | + make.width.mas_equalTo(72); | |
| 253 | + make.height.mas_equalTo(28); | |
| 254 | + }]; | |
| 255 | + | |
| 256 | + | |
| 257 | + | |
| 258 | + [self.contentImageV setBackgroundColor:[UIColor yellowColor]]; | |
| 259 | +} | |
| 260 | + | |
| 261 | +#pragma mark - ***editUI*** | |
| 262 | +- (void)editUIWithIndexPath:(NSIndexPath *)indexPath { | |
| 263 | + | |
| 264 | + if (!indexPath) { | |
| 265 | + return; | |
| 266 | + } | |
| 267 | + | |
| 268 | + self.indexPath = indexPath; | |
| 269 | + | |
| 270 | + if (!indexPath) { | |
| 271 | + return; | |
| 272 | + } | |
| 273 | + | |
| 274 | + self.indexPath = indexPath; | |
| 275 | + | |
| 276 | + if (indexPath.section == 0) { | |
| 277 | + if (indexPath.row == 1) { | |
| 278 | + NSString *titleStr = @"企业logo:"; | |
| 279 | + self.titleL.text = titleStr; | |
| 280 | + [self.contentImageV sd_setImageWithURL:[NSURL URLWithString:@""] placeholderImage:[UIImage imageNamedFromOrganization:@""]]; | |
| 281 | + self.contentImageV.frame = CGRectMake(95, 10, 60, 60); | |
| 282 | + | |
| 283 | + }else if (indexPath.row == 12) { | |
| 284 | + | |
| 285 | + NSString *titleStr = @"营业执照:"; | |
| 286 | + self.titleL.text = titleStr; | |
| 287 | + [self.contentImageV sd_setImageWithURL:[NSURL URLWithString:@""] placeholderImage:[UIImage imageNamedFromOrganization:@""]]; | |
| 288 | + self.contentImageV.frame = CGRectMake(95, 10, 101, 151); | |
| 289 | + | |
| 290 | + }else { | |
| 291 | + self.titleL.text = @""; | |
| 292 | + | |
| 293 | + return; | |
| 294 | + } | |
| 295 | + }else { | |
| 296 | + return; | |
| 297 | + } | |
| 298 | + | |
| 299 | + | |
| 300 | +} | |
| 301 | + | |
| 302 | + | |
| 303 | +#pragma mark - ***事件实现*** | |
| 304 | + | |
| 305 | + | |
| 306 | + | |
| 307 | +#pragma mark - ***监听实现*** | |
| 308 | + | |
| 309 | + | |
| 310 | +#pragma mark - ***私有方法*** | |
| 311 | +#pragma mark - ***懒加载*** | |
| 312 | + | |
| 313 | +/*** 头部 ***/ | |
| 314 | +- (UILabel *)titleL { | |
| 315 | + | |
| 316 | + if (!_titleL) { | |
| 317 | + _titleL = [[UILabel alloc]init]; | |
| 318 | + _titleL.font = [UIFont systemFontOfSize:12]; | |
| 319 | + _titleL.numberOfLines = 1; | |
| 320 | + } | |
| 321 | + return _titleL; | |
| 322 | + | |
| 323 | +} | |
| 324 | + | |
| 325 | + | |
| 326 | +/*** 内容 ***/ | |
| 327 | +- (UIImageView *)contentImageV { | |
| 328 | + | |
| 329 | + if (!_contentImageV) { | |
| 330 | + _contentImageV = [[UIImageView alloc]init]; | |
| 331 | + } | |
| 332 | + return _contentImageV; | |
| 333 | +} | |
| 334 | + | |
| 335 | + | |
| 336 | +- (void)setSelected:(BOOL)selected animated:(BOOL)animated { | |
| 337 | + [super setSelected:selected animated:animated]; | |
| 338 | + | |
| 339 | + // Configure the view for the selected state | |
| 340 | +} | |
| 341 | + | |
| 342 | +@end | ... | ... |
CNLiveOrganizationValidationModule/Classes/CNLiveOrganizationValidationModule/View/CNLiveBOrganizationDetailHeaderView.h
0 → 100644
| 1 | +// | |
| 2 | +// CNLiveBOrganizationDetailHeaderView.h | |
| 3 | +// CNLiveOrganizationValidationModule | |
| 4 | +// | |
| 5 | +// Created by 梁星国 on 2020/4/13. | |
| 6 | +// | |
| 7 | + | |
| 8 | +#import <UIKit/UIKit.h> | |
| 9 | + | |
| 10 | +NS_ASSUME_NONNULL_BEGIN | |
| 11 | + | |
| 12 | +@interface CNLiveBOrganizationDetailHeaderView : UIView | |
| 13 | + | |
| 14 | +@end | |
| 15 | + | |
| 16 | +NS_ASSUME_NONNULL_END | ... | ... |
CNLiveOrganizationValidationModule/Classes/CNLiveOrganizationValidationModule/View/CNLiveBOrganizationDetailHeaderView.m
0 → 100644
| 1 | +// | |
| 2 | +// CNLiveBOrganizationDetailHeaderView.m | |
| 3 | +// CNLiveOrganizationValidationModule | |
| 4 | +// | |
| 5 | +// Created by 梁星国 on 2020/4/13. | |
| 6 | +// | |
| 7 | + | |
| 8 | +#import "CNLiveBOrganizationDetailHeaderView.h" | |
| 9 | +#import <Masonry/Masonry.h> | |
| 10 | +#import <CNLiveBaseKit/CNLiveBaseKit.h> | |
| 11 | +#import "UIImage+OrganizationValidation.h" | |
| 12 | + | |
| 13 | +@interface CNLiveBOrganizationDetailHeaderView() | |
| 14 | + | |
| 15 | +@property (nonatomic, strong) UIImageView *tipImageV; | |
| 16 | + | |
| 17 | +@property (nonatomic, strong) UILabel *tipNameL; | |
| 18 | + | |
| 19 | +@end | |
| 20 | + | |
| 21 | +@implementation CNLiveBOrganizationDetailHeaderView | |
| 22 | + | |
| 23 | +- (instancetype)init | |
| 24 | +{ | |
| 25 | + self = [super init]; | |
| 26 | + if (self) { | |
| 27 | + [self setupUI]; | |
| 28 | + } | |
| 29 | + return self; | |
| 30 | +} | |
| 31 | + | |
| 32 | +- (instancetype)initWithFrame:(CGRect)frame | |
| 33 | +{ | |
| 34 | + self = [super initWithFrame:frame]; | |
| 35 | + if (self) { | |
| 36 | + [self setupUI]; | |
| 37 | + } | |
| 38 | + return self; | |
| 39 | +} | |
| 40 | + | |
| 41 | +- (void)awakeFromNib { | |
| 42 | + [super awakeFromNib]; | |
| 43 | + [self setupUI]; | |
| 44 | + | |
| 45 | +} | |
| 46 | + | |
| 47 | +- (void)layoutSubviews { | |
| 48 | + [super layoutSubviews]; | |
| 49 | + | |
| 50 | + [self layoutUI]; | |
| 51 | +} | |
| 52 | + | |
| 53 | + | |
| 54 | +#pragma mark - ***setupUI***r | |
| 55 | +- (void)setupUI { | |
| 56 | + | |
| 57 | + [self addSubview:self.tipImageV]; | |
| 58 | + [self addSubview:self.tipNameL]; | |
| 59 | + | |
| 60 | + self.tipImageV.image = [UIImage imageNamedFromOrganization:@"organization_detail_company"]; | |
| 61 | + self.tipNameL.text = @"您的公司信息"; | |
| 62 | + | |
| 63 | + | |
| 64 | +} | |
| 65 | + | |
| 66 | +#pragma mark - ***layoutUI*** | |
| 67 | +- (void)layoutUI { | |
| 68 | + | |
| 69 | + __weak typeof(self) weakSelf = self; | |
| 70 | + | |
| 71 | + [self.tipImageV mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 72 | + make.left.equalTo(weakSelf.mas_left).offset(12); | |
| 73 | + make.top.equalTo(weakSelf.mas_top).offset(16); | |
| 74 | + make.width.mas_equalTo(19); | |
| 75 | + make.height.mas_equalTo(20); | |
| 76 | + }]; | |
| 77 | + | |
| 78 | + [self.tipNameL mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 79 | + make.centerY.equalTo(weakSelf.mas_centerY).offset(0); | |
| 80 | + make.left.equalTo(weakSelf.tipImageV.mas_right).offset(10); | |
| 81 | + make.right.equalTo(weakSelf.mas_right).offset(-10); | |
| 82 | + make.height.mas_equalTo(12); | |
| 83 | + }]; | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | +} | |
| 88 | + | |
| 89 | +#pragma mark - editUI | |
| 90 | + | |
| 91 | + | |
| 92 | +#pragma mark - ***事件实现*** | |
| 93 | + | |
| 94 | + | |
| 95 | +#pragma mark - ***私有方法*** | |
| 96 | +#pragma mark - ***懒加载*** | |
| 97 | + | |
| 98 | +- (UIImageView *)tipImageV { | |
| 99 | + if (!_tipImageV) { | |
| 100 | + _tipImageV = [[UIImageView alloc]init]; | |
| 101 | + [_tipImageV setBackgroundColor:[UIColor whiteColor]]; | |
| 102 | + } | |
| 103 | + return _tipImageV; | |
| 104 | +} | |
| 105 | + | |
| 106 | +/*** 第一个提示图片 ***/ | |
| 107 | +- (UILabel *)tipNameL | |
| 108 | +{ | |
| 109 | + if (!_tipNameL) { | |
| 110 | + _tipNameL = [[UILabel alloc]init]; | |
| 111 | + _tipNameL.font = [UIFont systemFontOfSize:16]; | |
| 112 | + _tipNameL.textColor = RGBOF(0x1a1a1a); | |
| 113 | + | |
| 114 | + } | |
| 115 | + return _tipNameL; | |
| 116 | +} | |
| 117 | + | |
| 118 | +@end | ... | ... |
CNLiveOrganizationValidationModule/Classes/CNLiveOrganizationValidationModule/View/CNLiveBOrganizationTFCell.m deleted
100644 → 0
| 1 | -// | |
| 2 | -// CNLiveBOrganizationTFCell.m | |
| 3 | -// CNLiveOrganizationValidationModule | |
| 4 | -// | |
| 5 | -// Created by 梁星国 on 2020/4/10. | |
| 6 | -// | |
| 7 | - | |
| 8 | -#import "CNLiveBOrganizationTFCell.h" | |
| 9 | -#import <Masonry/Masonry.h> | |
| 10 | -#import "UIImage+OrganizationValidation.h" | |
| 11 | -#import <CNLiveBaseKit/CNLiveBaseKit.h> | |
| 12 | - | |
| 13 | - | |
| 14 | -#pragma mark - | |
| 15 | -#pragma mark - UITextField 类型 | |
| 16 | - | |
| 17 | -@interface CNLiveBOrganizationTFCell() | |
| 18 | -/** 背景*/ | |
| 19 | -@property (nonatomic, strong) UIImageView *cellBGimageV; | |
| 20 | -/** 头部*/ | |
| 21 | -@property (nonatomic, strong) UILabel *titleL; | |
| 22 | -/** 内容*/ | |
| 23 | -@property (nonatomic, strong) UILabel *contentL; | |
| 24 | -/** 认证*/ | |
| 25 | -@property (nonatomic, strong) UIButton *certificationBtn; | |
| 26 | -/** 认证Log*/ | |
| 27 | -@property (nonatomic, strong) UIImageView *certificationLogImageV; | |
| 28 | - | |
| 29 | -@end | |
| 30 | - | |
| 31 | -@implementation CNLiveBOrganizationTFCell | |
| 32 | - | |
| 33 | - | |
| 34 | -- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier | |
| 35 | -{ | |
| 36 | - self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]; | |
| 37 | - if (self) { | |
| 38 | - [self setupUI]; | |
| 39 | - } | |
| 40 | - return self; | |
| 41 | -} | |
| 42 | - | |
| 43 | -- (void)awakeFromNib { | |
| 44 | - [super awakeFromNib]; | |
| 45 | - [self setupUI]; | |
| 46 | - | |
| 47 | -} | |
| 48 | - | |
| 49 | -- (void)layoutSubviews { | |
| 50 | - [super layoutSubviews]; | |
| 51 | - | |
| 52 | - [self layoutUI]; | |
| 53 | -} | |
| 54 | - | |
| 55 | - | |
| 56 | -#pragma mark - ***setupUI*** | |
| 57 | -- (void)setupUI { | |
| 58 | - | |
| 59 | - [self setBackgroundColor:[UIColor whiteColor]]; | |
| 60 | - [self addSubview:self.cellBGimageV]; | |
| 61 | - [self addSubview:self.titleL]; | |
| 62 | - [self addSubview:self.contentL]; | |
| 63 | - [self addSubview:self.certificationBtn]; | |
| 64 | - [self addSubview:self.certificationLogImageV]; | |
| 65 | - | |
| 66 | - //测试 | |
| 67 | -// self.contentView.backgroundColor = [UIColor yellowColor]; | |
| 68 | -// self.contentL.backgroundColor = [UIColor yellowColor]; | |
| 69 | - self.titleL.text = @"个人认证"; | |
| 70 | - self.contentL.text = @"适合企业、媒体、国家机构和其他知名机构申请。\n申请方式:在B端申请或在电脑打开链接:http://open.cnlive.com/操作申请."; | |
| 71 | - | |
| 72 | -} | |
| 73 | - | |
| 74 | -#pragma mark - ***layoutUI*** | |
| 75 | -- (void)layoutUI { | |
| 76 | - | |
| 77 | - __weak typeof(self) weakSelf = self; | |
| 78 | - | |
| 79 | - [self.cellBGimageV mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 80 | - make.left.equalTo(weakSelf.mas_left).offset(0); | |
| 81 | - make.top.equalTo(weakSelf.mas_top).offset(0); | |
| 82 | - make.right.equalTo(weakSelf.mas_right).offset(0); | |
| 83 | - make.bottom.equalTo(weakSelf.mas_bottom).offset(0); | |
| 84 | - }]; | |
| 85 | - | |
| 86 | - [self.titleL mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 87 | - make.left.equalTo(weakSelf.mas_left).offset(20.5); | |
| 88 | - make.top.equalTo(weakSelf.mas_top).offset(26.5); | |
| 89 | - make.width.mas_equalTo(100); | |
| 90 | - make.height.mas_equalTo(17); | |
| 91 | - }]; | |
| 92 | - | |
| 93 | - [self.contentL mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 94 | - make.left.equalTo(weakSelf.titleL.mas_left).offset(0); | |
| 95 | - make.top.equalTo(weakSelf.titleL.mas_bottom).offset(13); | |
| 96 | - make.right.equalTo(weakSelf.mas_right).offset(-20.5); | |
| 97 | - make.bottom.equalTo(weakSelf.mas_bottom).offset(-23); | |
| 98 | - }]; | |
| 99 | - | |
| 100 | - [self.certificationBtn mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 101 | - make.right.equalTo(weakSelf.mas_right).offset(-21); | |
| 102 | - make.top.equalTo(weakSelf.mas_top).offset(20); | |
| 103 | - make.width.mas_equalTo(70); | |
| 104 | - make.height.mas_equalTo(25); | |
| 105 | - }]; | |
| 106 | - | |
| 107 | - | |
| 108 | - | |
| 109 | -} | |
| 110 | - | |
| 111 | -#pragma mark - editUI | |
| 112 | - | |
| 113 | - | |
| 114 | -#pragma mark - ***事件实现*** | |
| 115 | - | |
| 116 | - | |
| 117 | - | |
| 118 | - | |
| 119 | -#pragma mark - ***私有方法*** | |
| 120 | -#pragma mark - ***懒加载*** | |
| 121 | -/*** 背景 ***/ | |
| 122 | -- (UIImageView *)cellBGimageV | |
| 123 | -{ | |
| 124 | - if (!_cellBGimageV) { | |
| 125 | - _cellBGimageV = [[UIImageView alloc]init]; | |
| 126 | - _cellBGimageV.image = [UIImage imageNamedFromOrganization:@"service_cellBg"]; | |
| 127 | - } | |
| 128 | - return _cellBGimageV; | |
| 129 | -} | |
| 130 | - | |
| 131 | -/*** 头部 ***/ | |
| 132 | -- (UILabel *)titleL { | |
| 133 | - | |
| 134 | - if (!_titleL) { | |
| 135 | - _titleL = [[UILabel alloc]init]; | |
| 136 | - _titleL.font = [UIFont fontWithName:@"Helvetica-Bold" size:18]; | |
| 137 | - _titleL.numberOfLines = 1; | |
| 138 | - } | |
| 139 | - return _titleL; | |
| 140 | - | |
| 141 | -} | |
| 142 | - | |
| 143 | -/*** 内容 ***/ | |
| 144 | -- (UILabel *)contentL { | |
| 145 | - | |
| 146 | - if (!_contentL) { | |
| 147 | - _contentL = [[UILabel alloc]init]; | |
| 148 | - _contentL.font = [UIFont systemFontOfSize:12]; | |
| 149 | - _contentL.textAlignment = NSTextAlignmentLeft; | |
| 150 | - //让内容置顶 | |
| 151 | - [_contentL sizeToFit]; | |
| 152 | - _contentL.textColor = RGBOF(0x7b7b7b); | |
| 153 | - _contentL.numberOfLines = 0; | |
| 154 | - } | |
| 155 | - return _contentL; | |
| 156 | -} | |
| 157 | - | |
| 158 | - | |
| 159 | -/*** 认证按钮***/ | |
| 160 | -- (UIButton *)certificationBtn | |
| 161 | -{ | |
| 162 | - if (!_certificationBtn) { | |
| 163 | - _certificationBtn = [UIButton buttonWithType:UIButtonTypeSystem]; | |
| 164 | - [_certificationBtn setTitle:@"去认证" forState:UIControlStateNormal]; | |
| 165 | - [_certificationBtn setTitle:@"已认证" forState:UIControlStateSelected]; | |
| 166 | - [_certificationBtn setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal]; | |
| 167 | - [_certificationBtn setTitleColor:RGBOF(0x999999) forState:UIControlStateNormal]; | |
| 168 | - _certificationBtn.layer.masksToBounds = YES; | |
| 169 | - _certificationBtn.layer.cornerRadius = 12.5; | |
| 170 | - [_certificationBtn setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal]; | |
| 171 | - [_certificationBtn setTitleColor:[UIColor whiteColor] forState:UIControlStateSelected]; | |
| 172 | - _certificationBtn.titleLabel.font = [UIFont systemFontOfSize:13]; | |
| 173 | - _certificationBtn.userInteractionEnabled = NO; | |
| 174 | - | |
| 175 | - } | |
| 176 | - return _certificationBtn; | |
| 177 | -} | |
| 178 | - | |
| 179 | -/*** 认证Logo ***/ | |
| 180 | -- (UIImageView *)certificationLogImageV | |
| 181 | -{ | |
| 182 | - if (!_certificationLogImageV) { | |
| 183 | - _certificationLogImageV = [[UIImageView alloc]init]; | |
| 184 | - _certificationLogImageV.image = [UIImage imageName:@"service_personLog"]; | |
| 185 | - } | |
| 186 | - return _certificationLogImageV; | |
| 187 | -} | |
| 188 | - | |
| 189 | - | |
| 190 | - | |
| 191 | -- (void)setSelected:(BOOL)selected animated:(BOOL)animated { | |
| 192 | - [super setSelected:selected animated:animated]; | |
| 193 | - | |
| 194 | - // Configure the view for the selected state | |
| 195 | -} | |
| 196 | - | |
| 197 | -@end | |
| 198 | - | |
| 199 | - | |
| 200 | -#pragma mark - | |
| 201 | -#pragma mark - UITextView 类型 | |
| 202 | - | |
| 203 | -@interface CNLiveBOrganizationTViewCell() | |
| 204 | -/** 背景*/ | |
| 205 | -@property (nonatomic, strong) UIImageView *cellBGimageV; | |
| 206 | -/** 头部*/ | |
| 207 | -@property (nonatomic, strong) UILabel *titleL; | |
| 208 | -/** 内容*/ | |
| 209 | -@property (nonatomic, strong) UILabel *contentL; | |
| 210 | -/** 认证*/ | |
| 211 | -@property (nonatomic, strong) UIButton *certificationBtn; | |
| 212 | -/** 认证Log*/ | |
| 213 | -@property (nonatomic, strong) UIImageView *certificationLogImageV; | |
| 214 | - | |
| 215 | -@end | |
| 216 | - | |
| 217 | -@implementation CNLiveBOrganizationTViewCell | |
| 218 | - | |
| 219 | - | |
| 220 | -- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier | |
| 221 | -{ | |
| 222 | - self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]; | |
| 223 | - if (self) { | |
| 224 | - [self setupUI]; | |
| 225 | - } | |
| 226 | - return self; | |
| 227 | -} | |
| 228 | - | |
| 229 | -- (void)awakeFromNib { | |
| 230 | - [super awakeFromNib]; | |
| 231 | - [self setupUI]; | |
| 232 | - | |
| 233 | -} | |
| 234 | - | |
| 235 | -- (void)layoutSubviews { | |
| 236 | - [super layoutSubviews]; | |
| 237 | - | |
| 238 | - [self layoutUI]; | |
| 239 | -} | |
| 240 | - | |
| 241 | - | |
| 242 | -#pragma mark - ***setupUI*** | |
| 243 | -- (void)setupUI { | |
| 244 | - | |
| 245 | - [self setBackgroundColor:[UIColor whiteColor]]; | |
| 246 | - [self addSubview:self.cellBGimageV]; | |
| 247 | - [self addSubview:self.titleL]; | |
| 248 | - [self addSubview:self.contentL]; | |
| 249 | - [self addSubview:self.certificationBtn]; | |
| 250 | - [self addSubview:self.certificationLogImageV]; | |
| 251 | - | |
| 252 | - //测试 | |
| 253 | -// self.contentView.backgroundColor = [UIColor yellowColor]; | |
| 254 | -// self.contentL.backgroundColor = [UIColor yellowColor]; | |
| 255 | - self.titleL.text = @"个人认证"; | |
| 256 | - self.contentL.text = @"适合企业、媒体、国家机构和其他知名机构申请。\n申请方式:在B端申请或在电脑打开链接:http://open.cnlive.com/操作申请."; | |
| 257 | - | |
| 258 | -} | |
| 259 | - | |
| 260 | -#pragma mark - ***layoutUI*** | |
| 261 | -- (void)layoutUI { | |
| 262 | - | |
| 263 | - __weak typeof(self) weakSelf = self; | |
| 264 | - | |
| 265 | - [self.cellBGimageV mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 266 | - make.left.equalTo(weakSelf.mas_left).offset(0); | |
| 267 | - make.top.equalTo(weakSelf.mas_top).offset(0); | |
| 268 | - make.right.equalTo(weakSelf.mas_right).offset(0); | |
| 269 | - make.bottom.equalTo(weakSelf.mas_bottom).offset(0); | |
| 270 | - }]; | |
| 271 | - | |
| 272 | - [self.titleL mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 273 | - make.left.equalTo(weakSelf.mas_left).offset(20.5); | |
| 274 | - make.top.equalTo(weakSelf.mas_top).offset(26.5); | |
| 275 | - make.width.mas_equalTo(100); | |
| 276 | - make.height.mas_equalTo(17); | |
| 277 | - }]; | |
| 278 | - | |
| 279 | - [self.contentL mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 280 | - make.left.equalTo(weakSelf.titleL.mas_left).offset(0); | |
| 281 | - make.top.equalTo(weakSelf.titleL.mas_bottom).offset(13); | |
| 282 | - make.right.equalTo(weakSelf.mas_right).offset(-20.5); | |
| 283 | - make.bottom.equalTo(weakSelf.mas_bottom).offset(-23); | |
| 284 | - }]; | |
| 285 | - | |
| 286 | - [self.certificationBtn mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 287 | - make.right.equalTo(weakSelf.mas_right).offset(-21); | |
| 288 | - make.top.equalTo(weakSelf.mas_top).offset(20); | |
| 289 | - make.width.mas_equalTo(70); | |
| 290 | - make.height.mas_equalTo(25); | |
| 291 | - }]; | |
| 292 | - | |
| 293 | - | |
| 294 | - | |
| 295 | -} | |
| 296 | - | |
| 297 | -#pragma mark - editUI | |
| 298 | - | |
| 299 | - | |
| 300 | -#pragma mark - ***事件实现*** | |
| 301 | - | |
| 302 | - | |
| 303 | - | |
| 304 | - | |
| 305 | -#pragma mark - ***私有方法*** | |
| 306 | -#pragma mark - ***懒加载*** | |
| 307 | -/*** 背景 ***/ | |
| 308 | -- (UIImageView *)cellBGimageV | |
| 309 | -{ | |
| 310 | - if (!_cellBGimageV) { | |
| 311 | - _cellBGimageV = [[UIImageView alloc]init]; | |
| 312 | - _cellBGimageV.image = [UIImage imageNamedFromOrganization:@"service_cellBg"]; | |
| 313 | - } | |
| 314 | - return _cellBGimageV; | |
| 315 | -} | |
| 316 | - | |
| 317 | -/*** 头部 ***/ | |
| 318 | -- (UILabel *)titleL { | |
| 319 | - | |
| 320 | - if (!_titleL) { | |
| 321 | - _titleL = [[UILabel alloc]init]; | |
| 322 | - _titleL.font = [UIFont fontWithName:@"Helvetica-Bold" size:18]; | |
| 323 | - _titleL.numberOfLines = 1; | |
| 324 | - } | |
| 325 | - return _titleL; | |
| 326 | - | |
| 327 | -} | |
| 328 | - | |
| 329 | -/*** 内容 ***/ | |
| 330 | -- (UILabel *)contentL { | |
| 331 | - | |
| 332 | - if (!_contentL) { | |
| 333 | - _contentL = [[UILabel alloc]init]; | |
| 334 | - _contentL.font = [UIFont systemFontOfSize:12]; | |
| 335 | - _contentL.textAlignment = NSTextAlignmentLeft; | |
| 336 | - //让内容置顶 | |
| 337 | - [_contentL sizeToFit]; | |
| 338 | - _contentL.textColor = RGBOF(0x7b7b7b); | |
| 339 | - _contentL.numberOfLines = 0; | |
| 340 | - } | |
| 341 | - return _contentL; | |
| 342 | -} | |
| 343 | - | |
| 344 | - | |
| 345 | -/*** 认证按钮***/ | |
| 346 | -- (UIButton *)certificationBtn | |
| 347 | -{ | |
| 348 | - if (!_certificationBtn) { | |
| 349 | - _certificationBtn = [UIButton buttonWithType:UIButtonTypeSystem]; | |
| 350 | - [_certificationBtn setTitle:@"去认证" forState:UIControlStateNormal]; | |
| 351 | - [_certificationBtn setTitle:@"已认证" forState:UIControlStateSelected]; | |
| 352 | - [_certificationBtn setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal]; | |
| 353 | - [_certificationBtn setTitleColor:RGBOF(0x999999) forState:UIControlStateNormal]; | |
| 354 | - _certificationBtn.layer.masksToBounds = YES; | |
| 355 | - _certificationBtn.layer.cornerRadius = 12.5; | |
| 356 | - [_certificationBtn setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal]; | |
| 357 | - [_certificationBtn setTitleColor:[UIColor whiteColor] forState:UIControlStateSelected]; | |
| 358 | - _certificationBtn.titleLabel.font = [UIFont systemFontOfSize:13]; | |
| 359 | - _certificationBtn.userInteractionEnabled = NO; | |
| 360 | - | |
| 361 | - } | |
| 362 | - return _certificationBtn; | |
| 363 | -} | |
| 364 | - | |
| 365 | -/*** 认证Logo ***/ | |
| 366 | -- (UIImageView *)certificationLogImageV | |
| 367 | -{ | |
| 368 | - if (!_certificationLogImageV) { | |
| 369 | - _certificationLogImageV = [[UIImageView alloc]init]; | |
| 370 | - _certificationLogImageV.image = [UIImage imageName:@"service_personLog"]; | |
| 371 | - } | |
| 372 | - return _certificationLogImageV; | |
| 373 | -} | |
| 374 | - | |
| 375 | - | |
| 376 | - | |
| 377 | -- (void)setSelected:(BOOL)selected animated:(BOOL)animated { | |
| 378 | - [super setSelected:selected animated:animated]; | |
| 379 | - | |
| 380 | - // Configure the view for the selected state | |
| 381 | -} | |
| 382 | - | |
| 383 | -@end | |
| 384 | - | |
| 385 | - | |
| 386 | -#pragma mark - | |
| 387 | -#pragma mark - CNLiveBOrganizationSelectedCell 类型 | |
| 388 | - | |
| 389 | -@interface CNLiveBOrganizationSelectedCell() | |
| 390 | -/** 背景*/ | |
| 391 | -@property (nonatomic, strong) UIImageView *cellBGimageV; | |
| 392 | -/** 头部*/ | |
| 393 | -@property (nonatomic, strong) UILabel *titleL; | |
| 394 | -/** 内容*/ | |
| 395 | -@property (nonatomic, strong) UILabel *contentL; | |
| 396 | -/** 认证*/ | |
| 397 | -@property (nonatomic, strong) UIButton *certificationBtn; | |
| 398 | -/** 认证Log*/ | |
| 399 | -@property (nonatomic, strong) UIImageView *certificationLogImageV; | |
| 400 | - | |
| 401 | -@end | |
| 402 | - | |
| 403 | -@implementation CNLiveBOrganizationSelectedCell | |
| 404 | - | |
| 405 | - | |
| 406 | -- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier | |
| 407 | -{ | |
| 408 | - self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]; | |
| 409 | - if (self) { | |
| 410 | - [self setupUI]; | |
| 411 | - } | |
| 412 | - return self; | |
| 413 | -} | |
| 414 | - | |
| 415 | -- (void)awakeFromNib { | |
| 416 | - [super awakeFromNib]; | |
| 417 | - [self setupUI]; | |
| 418 | - | |
| 419 | -} | |
| 420 | - | |
| 421 | -- (void)layoutSubviews { | |
| 422 | - [super layoutSubviews]; | |
| 423 | - | |
| 424 | - [self layoutUI]; | |
| 425 | -} | |
| 426 | - | |
| 427 | - | |
| 428 | -#pragma mark - ***setupUI*** | |
| 429 | -- (void)setupUI { | |
| 430 | - | |
| 431 | - [self setBackgroundColor:[UIColor whiteColor]]; | |
| 432 | - [self addSubview:self.cellBGimageV]; | |
| 433 | - [self addSubview:self.titleL]; | |
| 434 | - [self addSubview:self.contentL]; | |
| 435 | - [self addSubview:self.certificationBtn]; | |
| 436 | - [self addSubview:self.certificationLogImageV]; | |
| 437 | - | |
| 438 | - //测试 | |
| 439 | -// self.contentView.backgroundColor = [UIColor yellowColor]; | |
| 440 | -// self.contentL.backgroundColor = [UIColor yellowColor]; | |
| 441 | - self.titleL.text = @"个人认证"; | |
| 442 | - self.contentL.text = @"适合企业、媒体、国家机构和其他知名机构申请。\n申请方式:在B端申请或在电脑打开链接:http://open.cnlive.com/操作申请."; | |
| 443 | - | |
| 444 | -} | |
| 445 | - | |
| 446 | -#pragma mark - ***layoutUI*** | |
| 447 | -- (void)layoutUI { | |
| 448 | - | |
| 449 | - __weak typeof(self) weakSelf = self; | |
| 450 | - | |
| 451 | - [self.cellBGimageV mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 452 | - make.left.equalTo(weakSelf.mas_left).offset(0); | |
| 453 | - make.top.equalTo(weakSelf.mas_top).offset(0); | |
| 454 | - make.right.equalTo(weakSelf.mas_right).offset(0); | |
| 455 | - make.bottom.equalTo(weakSelf.mas_bottom).offset(0); | |
| 456 | - }]; | |
| 457 | - | |
| 458 | - [self.titleL mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 459 | - make.left.equalTo(weakSelf.mas_left).offset(20.5); | |
| 460 | - make.top.equalTo(weakSelf.mas_top).offset(26.5); | |
| 461 | - make.width.mas_equalTo(100); | |
| 462 | - make.height.mas_equalTo(17); | |
| 463 | - }]; | |
| 464 | - | |
| 465 | - [self.contentL mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 466 | - make.left.equalTo(weakSelf.titleL.mas_left).offset(0); | |
| 467 | - make.top.equalTo(weakSelf.titleL.mas_bottom).offset(13); | |
| 468 | - make.right.equalTo(weakSelf.mas_right).offset(-20.5); | |
| 469 | - make.bottom.equalTo(weakSelf.mas_bottom).offset(-23); | |
| 470 | - }]; | |
| 471 | - | |
| 472 | - [self.certificationBtn mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 473 | - make.right.equalTo(weakSelf.mas_right).offset(-21); | |
| 474 | - make.top.equalTo(weakSelf.mas_top).offset(20); | |
| 475 | - make.width.mas_equalTo(70); | |
| 476 | - make.height.mas_equalTo(25); | |
| 477 | - }]; | |
| 478 | - | |
| 479 | - | |
| 480 | - | |
| 481 | -} | |
| 482 | - | |
| 483 | -#pragma mark - editUI | |
| 484 | - | |
| 485 | - | |
| 486 | -#pragma mark - ***事件实现*** | |
| 487 | - | |
| 488 | - | |
| 489 | - | |
| 490 | - | |
| 491 | -#pragma mark - ***私有方法*** | |
| 492 | -#pragma mark - ***懒加载*** | |
| 493 | -/*** 背景 ***/ | |
| 494 | -- (UIImageView *)cellBGimageV | |
| 495 | -{ | |
| 496 | - if (!_cellBGimageV) { | |
| 497 | - _cellBGimageV = [[UIImageView alloc]init]; | |
| 498 | - _cellBGimageV.image = [UIImage imageNamedFromOrganization:@"service_cellBg"]; | |
| 499 | - } | |
| 500 | - return _cellBGimageV; | |
| 501 | -} | |
| 502 | - | |
| 503 | -/*** 头部 ***/ | |
| 504 | -- (UILabel *)titleL { | |
| 505 | - | |
| 506 | - if (!_titleL) { | |
| 507 | - _titleL = [[UILabel alloc]init]; | |
| 508 | - _titleL.font = [UIFont fontWithName:@"Helvetica-Bold" size:18]; | |
| 509 | - _titleL.numberOfLines = 1; | |
| 510 | - } | |
| 511 | - return _titleL; | |
| 512 | - | |
| 513 | -} | |
| 514 | - | |
| 515 | -/*** 内容 ***/ | |
| 516 | -- (UILabel *)contentL { | |
| 517 | - | |
| 518 | - if (!_contentL) { | |
| 519 | - _contentL = [[UILabel alloc]init]; | |
| 520 | - _contentL.font = [UIFont systemFontOfSize:12]; | |
| 521 | - _contentL.textAlignment = NSTextAlignmentLeft; | |
| 522 | - //让内容置顶 | |
| 523 | - [_contentL sizeToFit]; | |
| 524 | - _contentL.textColor = RGBOF(0x7b7b7b); | |
| 525 | - _contentL.numberOfLines = 0; | |
| 526 | - } | |
| 527 | - return _contentL; | |
| 528 | -} | |
| 529 | - | |
| 530 | - | |
| 531 | -/*** 认证按钮***/ | |
| 532 | -- (UIButton *)certificationBtn | |
| 533 | -{ | |
| 534 | - if (!_certificationBtn) { | |
| 535 | - _certificationBtn = [UIButton buttonWithType:UIButtonTypeSystem]; | |
| 536 | - [_certificationBtn setTitle:@"去认证" forState:UIControlStateNormal]; | |
| 537 | - [_certificationBtn setTitle:@"已认证" forState:UIControlStateSelected]; | |
| 538 | - [_certificationBtn setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal]; | |
| 539 | - [_certificationBtn setTitleColor:RGBOF(0x999999) forState:UIControlStateNormal]; | |
| 540 | - _certificationBtn.layer.masksToBounds = YES; | |
| 541 | - _certificationBtn.layer.cornerRadius = 12.5; | |
| 542 | - [_certificationBtn setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal]; | |
| 543 | - [_certificationBtn setTitleColor:[UIColor whiteColor] forState:UIControlStateSelected]; | |
| 544 | - _certificationBtn.titleLabel.font = [UIFont systemFontOfSize:13]; | |
| 545 | - _certificationBtn.userInteractionEnabled = NO; | |
| 546 | - | |
| 547 | - } | |
| 548 | - return _certificationBtn; | |
| 549 | -} | |
| 550 | - | |
| 551 | -/*** 认证Logo ***/ | |
| 552 | -- (UIImageView *)certificationLogImageV | |
| 553 | -{ | |
| 554 | - if (!_certificationLogImageV) { | |
| 555 | - _certificationLogImageV = [[UIImageView alloc]init]; | |
| 556 | - _certificationLogImageV.image = [UIImage imageName:@"service_personLog"]; | |
| 557 | - } | |
| 558 | - return _certificationLogImageV; | |
| 559 | -} | |
| 560 | - | |
| 561 | - | |
| 562 | - | |
| 563 | -- (void)setSelected:(BOOL)selected animated:(BOOL)animated { | |
| 564 | - [super setSelected:selected animated:animated]; | |
| 565 | - | |
| 566 | - // Configure the view for the selected state | |
| 567 | -} | |
| 568 | - | |
| 569 | -@end | |
| 570 | - | |
| 571 | - | |
| 572 | -#pragma mark - | |
| 573 | -#pragma mark - CNLiveBOrganizationImageVSelectedCell 图片选择 | |
| 574 | - | |
| 575 | -@interface CNLiveBOrganizationImageVSelectedCell() | |
| 576 | -/** 背景*/ | |
| 577 | -@property (nonatomic, strong) UIImageView *cellBGimageV; | |
| 578 | -/** 头部*/ | |
| 579 | -@property (nonatomic, strong) UILabel *titleL; | |
| 580 | -/** 内容*/ | |
| 581 | -@property (nonatomic, strong) UILabel *contentL; | |
| 582 | -/** 认证*/ | |
| 583 | -@property (nonatomic, strong) UIButton *certificationBtn; | |
| 584 | -/** 认证Log*/ | |
| 585 | -@property (nonatomic, strong) UIImageView *certificationLogImageV; | |
| 586 | - | |
| 587 | -@end | |
| 588 | - | |
| 589 | -@implementation CNLiveBOrganizationImageVSelectedCell | |
| 590 | - | |
| 591 | - | |
| 592 | -- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier | |
| 593 | -{ | |
| 594 | - self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]; | |
| 595 | - if (self) { | |
| 596 | - [self setupUI]; | |
| 597 | - } | |
| 598 | - return self; | |
| 599 | -} | |
| 600 | - | |
| 601 | -- (void)awakeFromNib { | |
| 602 | - [super awakeFromNib]; | |
| 603 | - [self setupUI]; | |
| 604 | - | |
| 605 | -} | |
| 606 | - | |
| 607 | -- (void)layoutSubviews { | |
| 608 | - [super layoutSubviews]; | |
| 609 | - | |
| 610 | - [self layoutUI]; | |
| 611 | -} | |
| 612 | - | |
| 613 | - | |
| 614 | -#pragma mark - ***setupUI*** | |
| 615 | -- (void)setupUI { | |
| 616 | - | |
| 617 | - [self setBackgroundColor:[UIColor whiteColor]]; | |
| 618 | - [self addSubview:self.cellBGimageV]; | |
| 619 | - [self addSubview:self.titleL]; | |
| 620 | - [self addSubview:self.contentL]; | |
| 621 | - [self addSubview:self.certificationBtn]; | |
| 622 | - [self addSubview:self.certificationLogImageV]; | |
| 623 | - | |
| 624 | - //测试 | |
| 625 | -// self.contentView.backgroundColor = [UIColor yellowColor]; | |
| 626 | -// self.contentL.backgroundColor = [UIColor yellowColor]; | |
| 627 | - self.titleL.text = @"个人认证"; | |
| 628 | - self.contentL.text = @"适合企业、媒体、国家机构和其他知名机构申请。\n申请方式:在B端申请或在电脑打开链接:http://open.cnlive.com/操作申请."; | |
| 629 | - | |
| 630 | -} | |
| 631 | - | |
| 632 | -#pragma mark - ***layoutUI*** | |
| 633 | -- (void)layoutUI { | |
| 634 | - | |
| 635 | - __weak typeof(self) weakSelf = self; | |
| 636 | - | |
| 637 | - [self.cellBGimageV mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 638 | - make.left.equalTo(weakSelf.mas_left).offset(0); | |
| 639 | - make.top.equalTo(weakSelf.mas_top).offset(0); | |
| 640 | - make.right.equalTo(weakSelf.mas_right).offset(0); | |
| 641 | - make.bottom.equalTo(weakSelf.mas_bottom).offset(0); | |
| 642 | - }]; | |
| 643 | - | |
| 644 | - [self.titleL mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 645 | - make.left.equalTo(weakSelf.mas_left).offset(20.5); | |
| 646 | - make.top.equalTo(weakSelf.mas_top).offset(26.5); | |
| 647 | - make.width.mas_equalTo(100); | |
| 648 | - make.height.mas_equalTo(17); | |
| 649 | - }]; | |
| 650 | - | |
| 651 | - [self.contentL mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 652 | - make.left.equalTo(weakSelf.titleL.mas_left).offset(0); | |
| 653 | - make.top.equalTo(weakSelf.titleL.mas_bottom).offset(13); | |
| 654 | - make.right.equalTo(weakSelf.mas_right).offset(-20.5); | |
| 655 | - make.bottom.equalTo(weakSelf.mas_bottom).offset(-23); | |
| 656 | - }]; | |
| 657 | - | |
| 658 | - [self.certificationBtn mas_makeConstraints:^(MASConstraintMaker *make) { | |
| 659 | - make.right.equalTo(weakSelf.mas_right).offset(-21); | |
| 660 | - make.top.equalTo(weakSelf.mas_top).offset(20); | |
| 661 | - make.width.mas_equalTo(70); | |
| 662 | - make.height.mas_equalTo(25); | |
| 663 | - }]; | |
| 664 | - | |
| 665 | - | |
| 666 | - | |
| 667 | -} | |
| 668 | - | |
| 669 | -#pragma mark - editUI | |
| 670 | - | |
| 671 | - | |
| 672 | -#pragma mark - ***事件实现*** | |
| 673 | - | |
| 674 | - | |
| 675 | - | |
| 676 | - | |
| 677 | -#pragma mark - ***私有方法*** | |
| 678 | -#pragma mark - ***懒加载*** | |
| 679 | -/*** 背景 ***/ | |
| 680 | -- (UIImageView *)cellBGimageV | |
| 681 | -{ | |
| 682 | - if (!_cellBGimageV) { | |
| 683 | - _cellBGimageV = [[UIImageView alloc]init]; | |
| 684 | - _cellBGimageV.image = [UIImage imageNamedFromOrganization:@"service_cellBg"]; | |
| 685 | - } | |
| 686 | - return _cellBGimageV; | |
| 687 | -} | |
| 688 | - | |
| 689 | -/*** 头部 ***/ | |
| 690 | -- (UILabel *)titleL { | |
| 691 | - | |
| 692 | - if (!_titleL) { | |
| 693 | - _titleL = [[UILabel alloc]init]; | |
| 694 | - _titleL.font = [UIFont fontWithName:@"Helvetica-Bold" size:18]; | |
| 695 | - _titleL.numberOfLines = 1; | |
| 696 | - } | |
| 697 | - return _titleL; | |
| 698 | - | |
| 699 | -} | |
| 700 | - | |
| 701 | -/*** 内容 ***/ | |
| 702 | -- (UILabel *)contentL { | |
| 703 | - | |
| 704 | - if (!_contentL) { | |
| 705 | - _contentL = [[UILabel alloc]init]; | |
| 706 | - _contentL.font = [UIFont systemFontOfSize:12]; | |
| 707 | - _contentL.textAlignment = NSTextAlignmentLeft; | |
| 708 | - //让内容置顶 | |
| 709 | - [_contentL sizeToFit]; | |
| 710 | - _contentL.textColor = RGBOF(0x7b7b7b); | |
| 711 | - _contentL.numberOfLines = 0; | |
| 712 | - } | |
| 713 | - return _contentL; | |
| 714 | -} | |
| 715 | - | |
| 716 | - | |
| 717 | -/*** 认证按钮***/ | |
| 718 | -- (UIButton *)certificationBtn | |
| 719 | -{ | |
| 720 | - if (!_certificationBtn) { | |
| 721 | - _certificationBtn = [UIButton buttonWithType:UIButtonTypeSystem]; | |
| 722 | - [_certificationBtn setTitle:@"去认证" forState:UIControlStateNormal]; | |
| 723 | - [_certificationBtn setTitle:@"已认证" forState:UIControlStateSelected]; | |
| 724 | - [_certificationBtn setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal]; | |
| 725 | - [_certificationBtn setTitleColor:RGBOF(0x999999) forState:UIControlStateNormal]; | |
| 726 | - _certificationBtn.layer.masksToBounds = YES; | |
| 727 | - _certificationBtn.layer.cornerRadius = 12.5; | |
| 728 | - [_certificationBtn setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal]; | |
| 729 | - [_certificationBtn setTitleColor:[UIColor whiteColor] forState:UIControlStateSelected]; | |
| 730 | - _certificationBtn.titleLabel.font = [UIFont systemFontOfSize:13]; | |
| 731 | - _certificationBtn.userInteractionEnabled = NO; | |
| 732 | - | |
| 733 | - } | |
| 734 | - return _certificationBtn; | |
| 735 | -} | |
| 736 | - | |
| 737 | -/*** 认证Logo ***/ | |
| 738 | -- (UIImageView *)certificationLogImageV | |
| 739 | -{ | |
| 740 | - if (!_certificationLogImageV) { | |
| 741 | - _certificationLogImageV = [[UIImageView alloc]init]; | |
| 742 | - _certificationLogImageV.image = [UIImage imageName:@"service_personLog"]; | |
| 743 | - } | |
| 744 | - return _certificationLogImageV; | |
| 745 | -} | |
| 746 | - | |
| 747 | - | |
| 748 | - | |
| 749 | -- (void)setSelected:(BOOL)selected animated:(BOOL)animated { | |
| 750 | - [super setSelected:selected animated:animated]; | |
| 751 | - | |
| 752 | - // Configure the view for the selected state | |
| 753 | -} | |
| 754 | - | |
| 755 | -@end |
CNLiveOrganizationValidationModule/Classes/CNLiveOrganizationValidationModule/View/CNLiveBOrganizationValidationHeaderView.h
| ... | ... | @@ -33,7 +33,7 @@ NS_ASSUME_NONNULL_END |
| 33 | 33 | |
| 34 | 34 | NS_ASSUME_NONNULL_BEGIN |
| 35 | 35 | |
| 36 | -@interface CNLiveBOrganizationTVFooteriew : UITableViewHeaderFooterView | |
| 36 | +@interface CNLiveBOrganizationTVFooteriew : UIView | |
| 37 | 37 | |
| 38 | 38 | /** 协议按钮*/ |
| 39 | 39 | @property (nonatomic, strong) UIButton *agreementBtn; | ... | ... |
CNLiveOrganizationValidationModule/Classes/CNLiveOrganizationValidationModule/View/CNLiveBOrganizationValidationHeaderView.m
| ... | ... | @@ -284,9 +284,9 @@ |
| 284 | 284 | |
| 285 | 285 | @implementation CNLiveBOrganizationTVFooteriew |
| 286 | 286 | |
| 287 | -- (instancetype)initWithReuseIdentifier:(NSString *)reuseIdentifier | |
| 287 | +- (instancetype)initWithFrame:(CGRect)frame | |
| 288 | 288 | { |
| 289 | - self = [super initWithReuseIdentifier:reuseIdentifier]; | |
| 289 | + self = [super initWithFrame:frame]; | |
| 290 | 290 | if (self) { |
| 291 | 291 | [self setupUI]; |
| 292 | 292 | } |
| ... | ... | @@ -308,9 +308,9 @@ |
| 308 | 308 | |
| 309 | 309 | #pragma mark - ***setupUI*** |
| 310 | 310 | - (void)setupUI { |
| 311 | - [self.contentView addSubview:self.agreementBtn]; | |
| 312 | - [self.contentView addSubview:self.agreementL]; | |
| 313 | - [self.contentView addSubview:self.commitBtn]; | |
| 311 | + [self addSubview:self.agreementBtn]; | |
| 312 | + [self addSubview:self.agreementL]; | |
| 313 | + [self addSubview:self.commitBtn]; | |
| 314 | 314 | |
| 315 | 315 | NSString *contentStr = @"我同意并已阅读《中国网+内容安全协议》"; |
| 316 | 316 | NSMutableAttributedString *string = [[NSMutableAttributedString alloc] initWithString:contentStr attributes:@{NSFontAttributeName: [UIFont systemFontOfSize:11],NSForegroundColorAttributeName: [UIColor colorWithRed:153/255.0 green:153/255.0 blue:153/255.0 alpha:1.0]}]; | ... | ... |
Example/CNLiveOrganizationValidationModule.xcodeproj/xcshareddata/xcschemes/CNLiveOrganizationValidationModule-Example.xcscheme
| ... | ... | @@ -27,6 +27,15 @@ |
| 27 | 27 | selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
| 28 | 28 | selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
| 29 | 29 | shouldUseLaunchSchemeArgsEnv = "YES"> |
| 30 | + <MacroExpansion> | |
| 31 | + <BuildableReference | |
| 32 | + BuildableIdentifier = "primary" | |
| 33 | + BlueprintIdentifier = "6003F589195388D20070C39A" | |
| 34 | + BuildableName = "CNLiveOrganizationValidationModule_Example.app" | |
| 35 | + BlueprintName = "CNLiveOrganizationValidationModule_Example" | |
| 36 | + ReferencedContainer = "container:CNLiveOrganizationValidationModule.xcodeproj"> | |
| 37 | + </BuildableReference> | |
| 38 | + </MacroExpansion> | |
| 30 | 39 | <Testables> |
| 31 | 40 | <TestableReference |
| 32 | 41 | skipped = "NO"> |
| ... | ... | @@ -39,17 +48,6 @@ |
| 39 | 48 | </BuildableReference> |
| 40 | 49 | </TestableReference> |
| 41 | 50 | </Testables> |
| 42 | - <MacroExpansion> | |
| 43 | - <BuildableReference | |
| 44 | - BuildableIdentifier = "primary" | |
| 45 | - BlueprintIdentifier = "6003F589195388D20070C39A" | |
| 46 | - BuildableName = "CNLiveOrganizationValidationModule_Example.app" | |
| 47 | - BlueprintName = "CNLiveOrganizationValidationModule_Example" | |
| 48 | - ReferencedContainer = "container:CNLiveOrganizationValidationModule.xcodeproj"> | |
| 49 | - </BuildableReference> | |
| 50 | - </MacroExpansion> | |
| 51 | - <AdditionalOptions> | |
| 52 | - </AdditionalOptions> | |
| 53 | 51 | </TestAction> |
| 54 | 52 | <LaunchAction |
| 55 | 53 | buildConfiguration = "Debug" |
| ... | ... | @@ -71,8 +69,6 @@ |
| 71 | 69 | ReferencedContainer = "container:CNLiveOrganizationValidationModule.xcodeproj"> |
| 72 | 70 | </BuildableReference> |
| 73 | 71 | </BuildableProductRunnable> |
| 74 | - <AdditionalOptions> | |
| 75 | - </AdditionalOptions> | |
| 76 | 72 | </LaunchAction> |
| 77 | 73 | <ProfileAction |
| 78 | 74 | buildConfiguration = "Release" | ... | ... |
Example/CNLiveOrganizationValidationModule/CNLIVEBViewController.m
| ... | ... | @@ -9,6 +9,7 @@ |
| 9 | 9 | #import "CNLIVEBViewController.h" |
| 10 | 10 | #import "UIColor+MLPFlatColors.h" |
| 11 | 11 | #import "CNLiveBOrganizationValidattionController.h" |
| 12 | +#import "CNLiveBOraganizationDetailController.h" | |
| 12 | 13 | |
| 13 | 14 | @interface CNLIVEBViewController () |
| 14 | 15 | |
| ... | ... | @@ -27,6 +28,12 @@ |
| 27 | 28 | button.frame = CGRectMake(100, 100, 100, 100); |
| 28 | 29 | [button setBackgroundColor:UIColorFromRGB(0x000000)]; |
| 29 | 30 | [button addTarget:self action:@selector(buttonAction:) forControlEvents:UIControlEventTouchUpInside]; |
| 31 | + | |
| 32 | + UIButton *button1 = [UIButton buttonWithType:UIButtonTypeCustom]; | |
| 33 | + [self.view addSubview:button1]; | |
| 34 | + button1.frame = CGRectMake(100, 210, 100, 100); | |
| 35 | + [button1 setBackgroundColor:UIColorFromRGB(0x000000)]; | |
| 36 | + [button1 addTarget:self action:@selector(button1Action:) forControlEvents:UIControlEventTouchUpInside]; | |
| 30 | 37 | } |
| 31 | 38 | |
| 32 | 39 | - (void)buttonAction:(UIButton *)button { |
| ... | ... | @@ -37,6 +44,12 @@ |
| 37 | 44 | [self.navigationController pushViewController:vc animated:YES]; |
| 38 | 45 | } |
| 39 | 46 | |
| 47 | +- (void)button1Action:(UIButton *)button { | |
| 48 | + CNLiveBOraganizationDetailController *vc = [[CNLiveBOraganizationDetailController alloc]init]; | |
| 49 | + [self.navigationController pushViewController:vc animated:YES]; | |
| 50 | + | |
| 51 | +} | |
| 52 | + | |
| 40 | 53 | |
| 41 | 54 | - (void)didReceiveMemoryWarning |
| 42 | 55 | { | ... | ... |