DrawView를 호출하는 활동을 만들었습니다. Canvas에서 이진 트리와 같은 것을 그립니다. 캔버스 크기가 화면 크기보다 크고 onDraw 함수는 표시되는 부분뿐만 아니라 모든 캔버스를 그립니다. 나는 수평 및 수직 scrollView를 추가했으며 분명히 onDraw는 뷰를 새로 고치기 위해 반복해서 호출됩니다. onDraw 함수를 호출 할 필요없이 해당 이미지를 사용하여 트리를 표시하는 이미지 (비트 맵 또는 그와 유사한 이미지)에 캔버스를 그릴 수 있는지 궁금합니다. 이 작업을 수행 할 수 없으면 더 빨리 볼 수 있도록하려면 어떻게해야합니까?Android : 빠른 onDraw()를 얻는 방법
1
A
답변
1
기술적으로 캔버스는 비트 맵을 그립니다. 실제로 화면보다 큰 비트 맵입니다. 왜 비트 맵을 화면보다 크게 만드나요? 더 큰 비트 맵 = 더 많은 메모리 사용 - 조금 느려질 수 있습니다. 화면의 잘린 범위 내에서만 실제로 그립니다. 화면에서 벗어나고 있다고 생각할 수는 있지만 실제로는 그렇지 않습니다. 다른 비트 맵을 그리는 것은 도움이되지 않습니다 - 이미 그렇게하고 있습니다. 코드를 보지 않고 당신은 시도 할 수 :
이- 만 만 변경된 내용을 페인트 다시
invalidate(rect)
를 호출하여 이진 트리에 어떤 변화가 그리 당신 이진 트리가 정적을 의미하는 경우
- , 단지 PNG를 생성/그것의 JPG 모든 자신
- 당신이
4
API 11 이상을 사용하는 경우 매니페스트의 애플리케이션 태그에서 하드웨어 가속 속성을 사용해 볼 수 있습니다.
<application ... android:hardwareAccelerated="true" ...>
View가 아닌 다른 렌더링을 사용하는 것이 좋습니다. SurfaceView도 살펴보십시오.
일반적으로 UI 구성 요소 (예 : 버튼)를 작성하지 않는 한보기를 덮어 쓰지 않아야한다고 생각합니다.이 경우 나를 인용하지 마십시오.
관련 문제
- 1. 빠른 작업에서 listview itemid를 얻는 방법
- 2. onDraw를 사용하여 캔버스에 배경 이미지?
- 3. android - 컨텍스트에서보기를 얻는 방법?
- 4. 쉘 아이콘을 얻는 가장 빠른 방법
- 5. CRM 엔티티 이름을 얻는 쉽고 빠른 방법
- 6. WPF에서 사용자 입력을 얻는 간단하고 빠른 방법?
- 7. 각도의 현재 사분면을 얻는 가장 빠른 방법
- 8. 원격 이미지 치수를 얻는 빠른 방법
- 9. 다른 클래스에서 onDraw를 호출하려면 어떻게해야합니까?
- 10. onDraw를 주기적으로 호출하는 방법은 무엇입니까?
- 11. 휴대 기기에서 위도와 경도를 얻는 방법 Android
- 12. Android : Android 2.2에서 검색 키보드를 얻는 방법?
- 13. android 애플리케이션에 빠른 검색 창을 배치하는 방법
- 14. Android : Atom에서 링크를 얻는 방법
- 15. android 4.0.3 소스를 얻는 방법
- 16. Android - 라이브러리 컨텍스트를 얻는 방법?
- 17. android, 패키지 이름을 얻는 방법?
- 18. Android : 추천 검색어를 얻는 방법
- 19. Android - 친구의 위치를 얻는 방법
- 20. Android 빠른 연결/Prototcol
- 21. 왼쪽의 Android 빠른 스크롤
- 22. Android 빠른 비트 맵로드
- 23. 빠른 읽기 연락처 android
- 24. Magento 빠른 검색 방법
- 25. onDraw를 재정의 할 때보기 번역을 고려해야합니까?
- 26. UI의 스레드 (또는) onDraw를 사용자 정의합니다.
- 27. 빠른 방법
- 28. 모든 장치에 전달할 비트 마스크를 얻는 빠른 방법
- 29. Google 애널리틱스 API에서 기본 정보를 얻는 가장 빠른 방법
- 30. Visual Studio에서 빠른 정보로 표시되는 정보를 프로그래밍 방식으로 얻는 방법
내 트리가 정적이므로 두 번째 솔루션 포인트와 같은 것을 어떻게 구현할 수 있습니까? 내 말은, png/jpg를 내보낼 수는 있지만 사용자가 스크롤 할 때 어떻게 뷰에 표시 할 수 있습니까? – Ant4res
원하는 png/jpg 이미지를 만들고 나면 canvas.drawBitmap()을 호출하여 docs를 호출합니다. 또는 (필요에 따라) ImageView를 사용하여 이미지를 설정할 수 있습니다. – dbryson
많은 분들께 감사드립니다. – Ant4res