項目總結-2

在cocoapods的podfile文件更新和下載第三方框架

  • 安裝,pod install --no-repo-update
  • 更新,pod update --no-repo-update
  • --no-repo-update:不要更新倉庫,迅速加載第三方框架
  • 使用cocopods管理第三方框架后,都是通過.workspace工作空間來寫代碼的

跳轉控制器的3種方式

  • modal
  • push
  • 更改窗口的根控制器

讓cell的分割線占據全屏的3種方案

  • 方案一:自定義分隔線

  • 方案二:修改系統的屬性

    • iOS7,只需要修改設置self.tableView.separatorInset = UIEdgeInsetsZero就可以使分隔線占據全屏;
    • 在iOS8,還要設置cell.layoutMargins = UIEdgeInsetsZero;
  • 方案三(萬能的):重寫cell的setFrame方法

    • 先取消系統的分割線self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
    • 設置tableView背景色為分割線顏色
    • 將cell的高度減1,其他不變
//調整cell的frame
-(void)setFrame:(CGRect)frame
{
    frame.size.height -= 1;
    //給cell 的frame 賦值
    [super setFrame:frame];
}

關于修改控件的圓角半徑會使屏幕幀數下降的問題

  self.iconView.layer.cornerRadius = self.iconView.width * 0.5;
    // 超出主層邊框就會被裁剪掉
    self.iconView.layer.masksToBounds = YES;
  • 在iOS8之前,確實存在這個問題,但是在iOS9,幀數不會下降,蘋果已經修復了這個問題

從Xib中加載View注意事項

  • 必須要固定尺寸
  • 要在ViewDidLoad設置子控件的位置,在viewDidLayoutSubviews布局子控件
  • 從Xib中加載View就會調用awakeFromNib方法,會把xib中所有的屬性全部設置
  • 例如:
- (void)awakeFromNib
{
    UIImage *image = self.loginRegisterBtn.currentBackgroundImage;
    image = [image stretchableImageWithLeftCapWidth:image.size.width * 0.5 topCapHeight:image.size.height * 0.5];
    [self.loginRegisterBtn setBackgroundImage:image forState:UIControlStateNormal];
}
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容