[Android] 너비와 높이를 지정할 때 뷰의 크기를 자동으로 조정할 수 있는 ImageView를 만들어 보십시오.

개요


미리 종횡비를 지정하면 ImageView의 높이가 종횡비 값에 따라 자동으로 조정되는 View가 만들어집니다.
  • Github
  • https://github.com/chuross/AspectRatioImageView
  • Youtube
  • https://www.youtube.com/watch?v=Mzf7YqLeWEQ
  • 날과 씨


    이 프로그램 라이브러리를 만든 경과는 이렇습니다.
  • Picasso를 사용하여 fit로 이미지 로드
  • GridView에 numColumns를 지정하여 ImageView가 가로세로 비율로 고정된 방식으로 너비와 높이를 변경하도록 합니다.
  • 이런 상황에서 제가 곤란한 일은 다음과 같은 두 가지가 있습니다.
  • 너비는 MATCHPARENT로 지정, 높이는 WRAP-CONTENT에서 지정해야 함(ImageView 아래에 다른 View를 배치하려는 경우)
  • 높이를 WRAP로 설정CONTENT에서 지정한 후 Picasso에서 fit로 그림을 읽을 때 높이가 표시되지 않고 0으로 처리되어 방법을 생각해야 합니다
  • 폭과 높이가 결정되면 그 기초 위에서 View의 구역을 자동으로 조정하면 되죠!이렇게 했어
  • 사용법


    AspectRatioImageView를Gradle의 종속성으로 추가

    repositories {
        maven { url 'https://jitpack.io' }
    }
    
    dependencies {
        compile 'com.github.chuross:aspect-ratio-imageview:v1.0.2'
    }
    
    GiithubPage의 개인 마ven-repository를 언급했기 때문에 리포지션에 추가하는 것을 잊지 마세요.

    XML 레이아웃에 기술하기

    <dev.chuross.library.AspectRatioImageView
        android:id="@+id/img_aspect_image_8"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:ariv_widthRatio="16"
        app:ariv_heightRatio="9" />
    
    이 예에서는 ImageView를 16:9로 높이를 자동으로 조정합니다.

    라이선스


    Apache License 2.0

    별의별

  • 내용은 onMeasure를 통해 여러 가지 계산을 했을 뿐, ImageView는 의외로 사용할 수 있다
  • 이미 비슷한 개념의 라이브러리가 있지만 이쪽은 원래 사이즈에 맞게 조정할 수 있을 것 같아요.
  • https://github.com/jwkelso/AspectRatioImageView
  • 자리 표시자나 다른 방법도 있는 것 같다
  • 좋은 웹페이지 즐겨찾기