iOS 개발 UIView 레이아웃 및 다시 그리기

1786 단어
본고의 데모 프로젝트 코드는 여기의StudyUIViewAndUIVC를 참고하십시오

카탈로그

  • 레이아웃
  • layoutSubviews

  • 다시 그리기
  • drawRect

  • 참조
  • 배치


    layoutSubviews

  • 프로토타입
  • // UIView
    - (void)layoutSubviews;
    
  • 작용
  • Subclasses can override this method as needed to perform more precise layout of their subviews,   subviews    
    
  • 트리거
  • 1:      viewDidLoad(UIViewController)    
    
    2: frame change, addSubview  UIScrollView     
    

    sub view frame change 및 화면을 회전할 때 부모view의layoutSubviews를 터치합니다
  • 비고
  • 1:          ,     setNeedsLayout layoutIfNeeded          
    
    2: You should override this method only if the autoresizing and constraint-based behaviors of the subviews do not offer the behavior you want
    

    setNeedsLayout과layoutIfNeeded는 어떤 차이가 있습니까?setNeedsLayout은 태그만 다시 레이아웃해야 하지만 바로 갱신하지 않습니다.layoutIfNeeded와 함께 즉시 갱신할 수 있습니다

    다시 그리다


    drawRect

  • 프로토타입
  • // UIView
    - (void)drawRect:(CGRect)rect;
    
  • 작용
  • Draws the receiver’s image within the passed-in rectangle,    
    
  • 트리거
  • 1:      viewDidLoad(UIViewController)    
    
    2:   setNeedsDisplay setNeedsDisplayInRect   
    
  • 비고
  • 1:          ,     setNeedsDisplay setNeedsDisplayInRect          
    
    2:   drawRect        : rect   0
    

    참고 자료

  • UIView의 몇 가지 레이아웃 방법에 대해 이야기하자. - 레이아웃 Subviews, 레이아웃 If Needed, set Needs Layout...
  • What is the relationship between UIView's setNeedsLayout, layoutIfNeeded and layoutSubviews?
  • UIView의 layoutSubviews 및 drawRect
  • 더 많은 글, 나의 개인 블로그를 지지해 주십시오

    좋은 웹페이지 즐겨찾기