自定義tableViewCell,程式碼入口為-initWithStyle:或者-awakeFromNib, 不能是-initWithFrame:
在自定義 ELBloodRecordListCell時,習慣性的在-initWithFrame中,寫了100多行佈局子控制元件的程式碼,app執行後,居然使用的全是空白的系統cell,沒有建立和新增任何子控制元件,經過排查,發現原因如下:
自定義tableViewCell,程式碼入口為-initWithStyle:或者-awakeFromNib, 不能是-initWithFrame:
//錯誤
- (instancetype)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
}
return self;
}
//正確
- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
{
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if (self) {
}
return self;
}
但是UICollectionViewCell初始化時沒有style引數的方法,故使用父類UIView通用的初始化方法-initWithFrame:
@interface ELBloodRecordDetailCollectionCell : UICollectionViewCell
@end
@implementation ELBloodRecordDetailCollectionCell
- (instancetype)initWithFrame:(CGRect)frame {
if (self = [super initWithFrame:frame]) {
}
return self;
}
相關文章
- javascript為html元素新增自定義屬性程式碼JavaScriptHTML
- Xcode自定義程式碼塊XCode
- 微信掃碼支付~官方DEMO的坑~引數不能自定義
- 自定義AndroidStudio程式碼模板Android
- Android 程式設計程式碼-自定義 ToastAndroid程式設計AST
- js判斷一個函式是內建還是自定義程式碼例項JS函式
- map自定義排序,根據鍵或者值排隊排序
- xcode10 自定義程式碼塊XCode
- 自定義Android Studio程式碼模板Android
- rubymine設定自定義快捷程式碼片段
- jQuery自定義標籤程式碼例項jQuery
- javascript自定義右鍵選單程式碼JavaScript
- Android程式碼實現自定義ButtonAndroid
- AngularJS 自定義 Directive 及程式碼示例AngularJS
- initWithFrame常用寫法
- 自定義Mybatis自動生成程式碼規則MyBatis
- css自定義列表計數程式碼例項CSS
- jquery自定義事件簡單例項程式碼jQuery事件單例
- 類似if一樣的自定義程式碼塊
- gitSource 自定義指令碼Git指令碼
- 自定義view————碼錶View
- 自定義事件提醒程式事件
- Maven Archetype 多 Module 自定義程式碼腳手架Maven
- Sublime Text3—Code Snippets(自定義程式碼片段)
- 一行程式碼實現自定義轉場動畫--iOS自定義轉場動畫集行程動畫iOS
- tableau自定義地理編碼
- 微信小程式自定義tabBar微信小程式tabBar
- 微信小程式 自定義tabbar微信小程式tabBar
- 微信小程式自定義事件微信小程式事件
- 程式碼演示Mybatis-Generator 擴充套件自定義生成MyBatis套件
- 自定義右鍵導航選單程式碼例項
- CSS自定義滑鼠指標形狀程式碼例項CSS指標
- css自定義滑鼠指標圖示程式碼例項CSS指標
- InstallShield自定義對話方塊模板程式碼(轉)
- Obsidian自定義程式碼塊樣式成Typora
- Cordova應用的JavaScript程式碼和自定義外掛程式碼的除錯JavaScript除錯
- js自定義實現的簡單編碼和解碼程式碼例項JS
- SAP AET fields的自定義行為