postInvalidate ()는 무엇을합니까?
postInvalidate()Android 에서 기능 사용은 무엇입니까 ? 나는이 기능을 많은 곳에서보고있다. Google 검색을했을 때 다음과 같이 많이 나왔습니다.
postInvalidate-- UI 스레드에 무효화 요청 게시
"무효화 요청"이라는 말이 무슨 뜻인지 모르겠습니다. 누군가 여기서 무슨 일이 일어나고 있는지 자세히 설명 할 수 있습니까?
View 클래스에서 파생 된 각 클래스에는 invalidate 및 postInvalidate 메서드가 있습니다. invalidate가 호출되면 현재 뷰가 변경되었음을 시스템에 알리며 가능한 한 빨리 다시 그려야합니다. 이 메서드는 UIThread에서만 호출 할 수 있으므로 UIThread에 있지 않고 뷰가 변경되었음을 시스템에 알리고 자 할 때 다른 메서드가 필요합니다. postInvalidate 메소드는 비 UIThread에서 시스템에 알리고 가능한 한 빨리 UIThread의 다음 이벤트 루프에서 View가 다시 그려집니다. 또한 SDK 문서에 간략하게 설명 되어 있습니다.
invalidate 와 postInvalidate를 비교하십시오 .
이 메서드 ( postInvalidate())를 사용하면 ViewUI가 아닌 스레드에서를 무효화 할 수 있습니다 . ViewUI 스레드 사용 invalidate()방법 을 무효화하려면 .
무효화는 View.onDraw(Canvas)메서드가 (즉시가 아닌) 미래의 어느 시점에 호출되어 전체 View( View가 보이는 경우 )를 다시 그릴 것임을 의미 합니다.
Android는 Views를 자동으로 View다시 그리지 만 때때로 "이것이 변경되었습니다. 최대한 빨리 다시 그리세요 ."라고 말할 필요가 있습니다.
더보기 :
http://developer.android.com/guide/topics/ui/how-android-draws.html
http://developer.android.com/reference/android/view/View.html#invalidate%28%29
간단히 말해서, invalidate()메소드는 UI 스레드에서 호출 할 수 있으며 , postInvalidate()일부 변경이 이루어진 후 Android에 사용자 정의 뷰를 업데이트하도록 지시하기 위해 비 UI 스레드에서 호출 할 수 있습니다.
참고 URL : https://stackoverflow.com/questions/5521596/what-does-postinvalidate-do
'Program Club' 카테고리의 다른 글
| NumPy의 가중 표준 편차 (0) | 2020.11.26 |
|---|---|
| 배열에서 for each 루프를 어떻게 사용할 수 있습니까? (0) | 2020.11.26 |
| Rails : csrf_meta_tag는 어떻게 작동합니까? (0) | 2020.11.26 |
| Rails 4는 OR 쿼리를 지원합니까? (0) | 2020.11.26 |
| 파이썬에서 부호있는 정수를 부호없는 정수로 변환하는 방법 (0) | 2020.11.26 |