배치에 대한보기 크기 계산을 수행하는 것이 눈살을 찌푸리게합니다. Android 레이아웃 관리자는 모든보기를 올바르게 배치해야합니다. 그러나 힌트 (예 : GridView 의 열 수 또는 한 줄에 최소 문자 수가 표시되도록 텍스트보기 크기 조정)를 제공하기 위해 일종의 계산 을 수행해야하는 합법적 인 경우가 있습니다. 이러한 경우 관련 너비/높이 정보 또는 글꼴 너비/높이/등을 얻고 싶습니다. 그러나 뷰가 디스플레이에 렌더링되었지만 늦은 경우가 아니라면 getWidth()/getHeigth()/etc 호출은 유효한 값 을 반환하지 않습니다. 잡기 22 상황입니다. 내가 찾지 못한 몇 가지 방법이 있는지 궁금해합니다. (안드로이드 API가 크고 내 마음을 모두 이해할 수 있습니다.) 위에서 설명한 내용이 가능합니다.첫 번째 표시 전에보기 너비/높이 또는 글꼴 너비/높이/다른 크기 가져 오기
4
A
답변
7
부모 크기가 계산 될 때까지보기 크기를 계산할 수 없지만 항상 계산하려면 measure(allowedWidth, allowedHeight)
을 호출해야합니다. 그러면 getMeasuredWidth()
가 작동합니다.
는 http://developer.android.com/reference/android/view/View.html#measure(int, int)
5
그래 내가 제안을 시험하고 작동보세요!
샘플 코드.
Display display = getWindowManager().getDefaultDisplay();
View s = findViewById(R.id.Screen); // Screen is a container layout
s.measure(display.getWidth(), display.getHeight());
View c = findViewById(R.id.Cell0);
Log.i(TAG, "cell width = " + String.valueOf(c.getMeasuredWidth())
+ " height = " + String.valueOf(c.getMeasuredHeight()));
내가 어떻게 이것을 놓쳤는지는 모르겠다. :) 측정 프로세스에 대해 모두 알고 있었지만 사용자 정의보기에서 의 사용을 고수했습니다 ...
관련 문제
- 1. 모달보기 다시 표시 첫 번째 대신 마지막 VC 가져 오기
- 2. wxPython에서 RichTextCtrl의 기본 글꼴 크기 가져 오기
- 3. 선택한 글꼴 크기/스타일 가져 오기
- 4. 글꼴 크기 또는 서식있는 RichTextBox
- 5. 한 달에 첫 번째 또는 마지막 금요일 가져 오기
- 6. 템플릿의 QuerySet 첫 번째 항목 가져 오기
- 7. 쿼리의 첫 번째 행에서 필드 가져 오기
- 8. Android ListView에서만 첫 번째 항목 가져 오기?
- 9. Dwoo에서 배열의 첫 번째 요소 가져 오기
- 10. For 루프에서 첫 번째 항목 가져 오기
- 11. xml 노드의 첫 번째 자식 가져 오기
- 12. Grails 목록의 첫 번째 요소 가져 오기
- 13. 첫 번째 값 쌍의 값 가져 오기
- 14. 컨트롤러에서 selectlist 첫 번째 값 가져 오기
- 15. PHP에서 페이지 첫 번째 이미지를 가져 오기
- 16. 제공된 날짜의 첫 번째 요일 가져 오기
- 17. UITabBar를 표시하기 전에보기 표시
- 18. Android : 렌더링 전에보기 크기 측정
- 19. nswindow 크기 가져 오기
- 20. 글꼴 벡터 가져 오기
- 21. WPF에서 첫 번째 보이는 항목 가져 오기 ListView C#
- 22. Adobe Text Layout Framework에서 렌더링 글꼴 크기 가져 오기
- 23. 레일에 첫 번째 레코드 표시
- 24. DropDownList로 첫 번째 값 표시
- 25. iPhone - UITextField의 조정 된 글꼴 크기 가져 오기
- 26. 이미지 크기 가져 오기
- 27. 폴더 크기 가져 오기
- 28. 뒤의 코드에 글꼴 속성 가져 오기
- 29. .net에서 글꼴 정보 가져 오기
- 30. 글꼴 목록 가져 오기 (Win32)
'표시'는 어디에서 왔습니까? –