使用KVC设置系统定义的只读属性,这是私有方法吗?

时间:2018-10-10 06:39:27

标签: ios objective-c uitableview tableview xib

当我使用Xib构建多个TabelViewCell视图时,我不想将identfier编写为静态,并且此Xib包含多种Cell类型。

但是,如果使用系统提供的方法,TableView将没有针对UINib子类注册标识符的方法。

- (void)registerNib:(nullable UINib *)nib forCellReuseIdentifier:(NSString *)identifier NS_AVAILABLE_IOS(5_0); 我尝试使用此方法进行动态标识符注册。但默认情况下,它仅读取Xib中的第一个视图。

因此,我使用以下方法进行动态NIb标识符设置 YZHPhoneContactCell* cell = [tableView dequeueReusableCellWithIdentifier:identifierID]; if (cell == nil) { UINib* nib = [UINib nibWithNibName:@"YZHPhoneContactCell" bundle:nil]; cell = [[nib instantiateWithOwner:nil options:nil] objectAtIndex:cellType]; [cell setValue:identifierID forKey:@"reuseIdentifier"]; } 我可以通过这种方式正常运行,但是我不知道这是否属于调用系统的私有方法并影响我的App Appstore审核。

或者,如果您有更好的方法来动态注册Nib多个子视图标识符,请告诉我。谢谢

0 个答案:

没有答案