Android ImageView 에서 JPEG 그림 을 표시 하지 않 는 문제 해결

3469 단어 androidimageview
Android ImageView 는 JPEG 그림 을 표시 하지 않 습 니 다.
오늘 은 작은 인 스 턴 스 를 쓰 고 있 습 니 다.ImageView 는 xml 에 INVISIBLE 을 설정 하고 코드 에 set Visibility(View.VISIBLE)로 설정 해 야 하지만 그림 이 표시 되 지 않 았 습 니 다.PNG 나 다른 JPEG 형식의 그림 으로 바 꾸 면 정상적으로 표 시 될 수 있 습 니 다.
원인:표 시 된 그림 의 크기 는 5.39K 이 고 그림 형식 이 손상 되 어 정상적으로 표시 되 지 않 습 니 다.
해결:그림 을 바 꾸 거나 JPEG 그림 을 다시 만 듭 니 다.
만약 정상적으로 표시 되 지 않 는 다 면,VISIBLE 를 설정 한 후에 다음 과 같은 방법 을 사용 하 는 것 을 권장 합 니 다.

iv.setVisibility(View.VISIBLE); 
view.requestLayout(); 
Call this when something has changed which has invalidated the layout of this view. This will schedule a layout pass of the view tree.
우 리 는 view 를 재 구성 한 것 으로 이해 할 수 있다.
용도:때때로 우 리 는 view 의 내용 을 바 꾼 후에 디 스 플레이 에 오류 가 발생 할 수 있 습 니 다.예 를 들 어 ListView 를 쓸 때 convertview 의 한 TextView 를 다시 사용 하면 앞 뒤로 채 워 진 text 길이 가 다 르 기 때문에 디 스 플레이 에 오류 가 발생 할 수 있 습 니 다.이때 우 리 는 내용 을 바 꾼 후에 requestLayout 방법 으로 해결 할 수 있 습 니 다.
권장:png 는 무 손실 형식 이 고 JPG 는 유 손 형식 입 니 다.JPG 는 색상 이 많은 그림 을 처리 할 때 압축 률 에 따라 육안 식별 차이 가 적은 중간 색상 을 일부 제거 하기 도 한다.그러나 PNG 는 무 손실 이라는 기본 적 인 요구 에 대해 서 는 모든 색상 수 를 엄 격 히 유지 합 니 다.그 러 니까그림 의 크기 가 크 거나 색채 의 수량 이 많 거나 특히 그 라 데 이 션 색 이 많 을 때 PNG 의 부 피 는 JPG 보다 현저히 크다.
Android 의 인 터 페 이 스 는 png 를 사용 하 는 것 이 가장 좋 습 니 다.32 비트 png 색상 이 과도 하고 매 끄 럽 고 투명 하기 때 문 입 니 다.jpg 는 픽 셀 화 압축 된 그림 으로 품질 이 떨 어 졌 습 니 다.9patch 버튼 과 평평 하 게 펴 는 컨트롤 을 가 져 오 면 끔찍 할 것 입 니 다.되도록 피해 야 합 니 다.사실 res 에서 icon 은 모두 png 형식 을 사용 합 니 다.즉,Google 은 png 형식의 그림 을 추천 합 니 다.
색깔 이 복잡 한 것,예 를 들 어 사진 벽지 와 같은 그림(일부 응용 프로그램의 시작 화면 은 이런 것 을 좋아 합 니 다)은 jpg 를 사용 하 는 것 이 가장 좋 습 니 다.이런 그림 은 압축 하기 전에 압축 한 후에 육안 으로 거의 구분 하지 않 습 니 다.만약 에 png 로 저장 하면 부 피 는 jpg 의 몇 배,심지어 몇 십 배 이 고 부 피 를 심각하게 낭비 할 것 입 니 다.
해석:9patch 가 무엇 인지,Patch 의 중국어 뜻 은'조각,조각'이라는 뜻 입 니 다.그러면 여 기 는 중국어 로 9 조각 또는 9 조각 입 니 다.따라서 이 그림 은 다음 그림 과 같이 9 조각 으로 나 눌 것 으로 예상 된다.

9patch 는 이렇게 많은 것 만 설명 하고 상세 하 게 알 아야 할 것 은 계속 깊이 연구 할 수 있다.
Android Studio 에서 그림 자원 을 어떻게 인용 합 니까?
Eclipse 에 서 는 그림 의 픽 셀 크기 에 따라.png 또는.jpg 의 그림 을 drawable 폴 더 에 놓 습 니 다.예 를 들 어 drawable-hdpi,drawable-ldpi,drawable-xdpi,drawable-xxhdpi 등 입 니 다.같은 그림 을 다른 drawable 폴 더 에 놓 으 면 표시 할 때 달라 집 니 다.그러나 xml 에서 인용 할 때 는 같 습 니 다.android:src=@drawable/pic 또는 android:background=@drawable/pic.

하지만 Android Studio 에 서 는 다 릅 니 다.이렇게 많은 drawable 디 렉 터 리 가 없고 drawable 폴 더 만 있 습 니 다.대신 mipmap-hdpi,mipmap-mdpi,mipmap-xdpi 등 mipmap 폴 더 가 많이 나 왔 습 니 다.그림 에서 보 듯 이:

먼저 drawable 에 그림 을 넣 은 다음 xml 에서 android:src=@drawable/pic 또는 android:background=@drawable/pic 를 사용 합 니 다.사용,문제 가 없 음 을 발견 하면 충분히 표시 할 수 있 습 니 다.근 데 왜 이렇게 mipmap 이 많 지?
Google 은 성능 최적화,메모리 사용량 감소 등 을 공식 적 으로 설명 하고 있 습 니 다.어쨌든 mipmap 는 drawable 보다 좋 습 니 다.So,Android Studio 에서 mipmap 를 사용 하 는 것 을 추천 합 니 다.좋 습 니 다.우 리 는 그림 을 mipmap 폴 더 아래 에 두 었 습 니 다.그러면 xml 에서 어떻게 사용 합 니까?android:src=@mipmap/pic  drawable 에 있 는 그림 과 유사 한 인용 방식 도@으로 참조 합 니 다.그래서 이것 도 매우 간단 합 니 다.서로 다른 픽 셀 의 mipmap 폴 더 그림 은 똑 같이 사 용 됩 니 다.그러나 주의:AS 에 서 는 같은 그림 을 drawable 폴 더 에 놓 는 것 과 mipmap 폴 더 에 놓 는 것 이 효과 가 다 르 며 크기,크기,픽 셀 에 차이 가 있 을 수 있 습 니 다.안 드 로 이 드 스튜디오 와 이 클립 스 를 비교 해 보면 비슷 하면 서도 차이 가 있다.
이상 은 본 고의 모든 내용 입 니 다.본 고의 내용 이 여러분 의 학습 이나 업무 에 어느 정도 도움 이 되 기 를 바 랍 니 다.또한 저 희 를 많이 지지 해 주시 기 바 랍 니 다!

좋은 웹페이지 즐겨찾기