정사각형 이미지 격자를 만들고 싶지만 필요에 따라 이미지가 표시되지 않습니다. 나는의 GridView 튜토리얼 시작 : 가까운 내가 원하는 것 같았다Android GridView 3 x 6 이미지 자르기
http://developer.android.com/resources/tutorials/views/hello-gridview.html
.
내가 볼 수있는 유일한 차이점은 정확히 18 개의 이미지가 필요하며 모두 크기가 정사각형이어야한다는 것입니다. 저는 열의 수를 3으로 설정 한 다음 18 개의 이미지를로드합니다. 그러면 18 개의 이미지가 6 개의 행에로드됩니다. 이미지가 각 행을 완전히 채우고 불필요한 추가 크기의 간격을 남기지 않도록합니다. 이미지가 휴대 전화에 다운로드 될 때까지 이미지 크기를 알지 못합니다. 잘만되면 그들은 거의 정사각형이 될 것입니다. 그러나 중심을 잘라내어 완벽하게 정사각형으로 만들고 3 개의 기둥을 완전히 채우도록 크기를 조정해야합니다. 이미지의 종횡비를 유지해야합니다.
설정이나 코드를 찾을 수없는 것 같습니다. 이미지가 겹치거나, 틈이 있거나, 제대로 확장되지 않거나, 다른 것이 잘못되었습니다.
내가 들어 왔 가장 가까운 내 에뮬레이터가 480X800로 설정되어있는 경우 다음과 같이의 GridView 자습서를 변경하는 것입니다 :
imageView.setLayoutParams(new GridView.LayoutParams(480/3, 480/3)); imageView.setScaleType(ImageView.ScaleType.CENTER_CROP); imageView.setPadding(0, 0, 0, 0); imageView.setAdjustViewBounds(true); ==== < GridView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/gridview" android:layout_width="fill_parent" android:layout_height="fill_parent" android:numColumns="3" android:stretchMode="columnWidth" android:gravity="fill|clip_horizontal|clip_vertical" />
이 거의 정확합니다. 내가 사용하고있는 사각형 테스트 이미지는 몇 픽셀이 누락되었습니다. 정사각형이 아닌 이미지는 자르지 않고 비율을 유지하기 위해 블랙 복싱으로 내부에 들어 맞습니다. 하드 코딩 된 값은 부서지기 쉽기 때문에 모든 전화기, 방향 또는 레이아웃. CENTER_CROP 문서가 이미지에 맞게 확장하여 원하는대로 할 것이라고 생각하는 대신 CENTER_INSIDE처럼 보일 것 같습니다.
나는 가까운 느낌이지만, 내가 원하는 것을 결코 얻지 못한다. 어쩌면 GridView 이외의 다른 뭔가를 사용해야합니까? 어떤 제안?
아무쪼록.
감사합니다.
참조 http://stackoverflow.com/questions/6557516/making-grid-view-items-square – larham1