Android SwiperRefreshLayout 에서 디 스 플레이 새로 고침 애니메이션 을 처음 불 러 옵 니 다.
Swiper RefreshLayout 는 구 글 이 공식 적 으로 내 놓 은 드 롭 다운 리 셋 컨트롤 로 최근 프로젝트 에 사 용 될 때 문제 가 발생 했 습 니 다.데 이 터 를 처음 불 러 올 때 새로 고침 한 애니메이션, 즉 Swiper RefreshLayout 가 자체 적 으로 가지 고 있 는 CircleView 애니메이션 (이전 버 전 sdk 는 무지개 줄) 을 표시 하고 싶 지만 기본 setRefreshing (true) 방법 으로 는 처음으로 애니메이션 효 과 를 불 러 올 수 없습니다.우 리 는 이렇게 처리 할 수 있다.
swipeRefreshLayout.setProgressViewOffset(false, 0, (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 24, getResources().getDisplayMetrics()));
swipeRefreshLayout.setRefreshing(true);
不过由于显示的动画只是CircleView原地转圈,不包含下拉过程的动画。数据处理过程时间一般不会很长,所以显示时间较短。我们可以手动的增加动画延时。
final Handler handler = new Handler(); handler.postDelayed(new Runnable() { @Override public void run() { swipeLayout.setRefreshing(false); errorSwipeLayout.setRefreshing(false); } }, 1000);
업데이트 문제: 2.3 장치 에 이러한 bug 가 발생 할 수 있 습 니 다. 손가락 이 미 끄 러 지 는 거리 가 새로 고침 을 촉발 하 는 조건 에 이 르 지 못 하면 CircleView 는 공백 을 표시 하고 화면 에 계속 서 있 습 니 다.4.0 이상 의 설 비 는 이런 상황 이 없다.
원인: 알 수 없 음.만약 큰 신 이 알 고 있다 면, 가르침 을 주 십시오!
해결 방법: setProgressView Offset 의 첫 번 째 매개 변 수 는 true 로 설정 합 니 다.Z 방향 에서 progress spinner 가 표시 하 는 보기 보다 높 지 않 으 면 수정 에 문제 가 없 을 것 입 니 다.
참고 자료:
1. http://stackoverflow.com/questions/26858692/swiperefreshlayout-setrefreshing-not-showing-indicator-initially
2. https://code.google.com/p/android/issues/detail?id=77712
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
git 버 전 관리 에서 파일 제거 andorid 버 전git rm -r -n --cached */bin git rm *~ (현재 디 렉 터 리 에서 "~"로 끝 나 는 파일 만 삭제 합 니 다) 별표 * 이전의 역 슬 래 쉬\, 왜냐하면 Git 은 파일 모드 확...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.