2014-02-20 3 views
0

이 질문은 지금 당분간 나를 괴롭 히고 있습니다.보기를 만드는 빠른 방법

아이디어는 빠른 방법으로보기를 그리거나 만드는 방법을 사용하고자한다는 것입니다. XML 레이아웃에는 동적 레이아웃보다 장점이 더 많습니다.

캐싱에 대해서도 읽었습니다. 분명히 UI 요소 전체를 캐시 할 수는 없으며 캐시해서는 안됩니다. 상태/값을 저장하고 다시 만들면 처음부터 만드는 것과 같은 시간이 걸리지는 않습니까? 더 빠르게보기를 그리는 중요한 방법이 있습니까?

내 목표는 무엇입니까?

안드로이드 앱에서 다른 활동이 있다고 말하면됩니다. 두 번째로 액티비티를 방문 할 때 성능과 유용성을 최적화하기 위해 더 빠르게 "렌더링"하고 싶습니다. 예를 들어 캐싱과 같은 방법이나 다른 방법이 있습니까? 아니면 XML 레이아웃 또는 프로그래밍 방식을 통해 처음부터 각 활동을 다시 만드는 데 주저합니까? 어떤 생각에 미리

덕분에 ..

+0

실제로 무엇을하고 싶습니까? – pskink

답변

1

내가 활동을 방문 두 번째 시간, 나는 그것을 "렌더링"로 더 빠른 성능과 유용성

음을 최적화하려면, 그것은 것입니다 당신의 자원이 이미 프로세스에로드되기 때문에 어느 정도까지 자체적으로 수행하십시오.

또한 액티비티의 기존 인스턴스를 포어 그라운드로 가져와 현재 실행중인 인스턴스가없는 경우 새로 만들 수도 있습니다 (예 : FLAG_ACTIVITY_REORDER_TO_FRONT). 그러나 이는 성능을 구체적으로 다루는 것보다 탐색을 제어하는 ​​방법에 더 가깝습니다.

"뚱뚱한 활동"아키텍처와 함께 실제 활용도를 조금 더 높일 수있는 조각을 활용하는 등 많은 활동을 최소화 할 수도 있습니다.

성능 문제가있는 기존 코드가있는 경우 추측하기보다는 Traceview와 같은 도구를 사용하여 시간이 소비되는 위치를 파악하십시오.

+0

좋은 답변입니다. 개체의 인스턴스를 전달하고 다른 클래스에 저장하면 아이디어가 생깁니다. 이전에 저장 한 레이아웃 인스턴스에서 콘텐츠 뷰를 다시 설정 한 특정 활동으로 돌아 왔을 때 재생성보다 훨씬 빠릅니다. 그것? @CommonsWare – Odin

+0

@Chris : "개체"가 무엇인지 전혀 알지 못합니다. 존재하는 성능 문제에 대해 걱정하고 도구를 사용하여 이러한 성능 문제가있는 위치를 확인하십시오. 잠재적 인 문제를 무작위로 추측 한 다음 잠재적 인 솔루션을 무작위로 추측하여 시간을 낭비하고 있습니다. – CommonsWare

+0

개체는 Button, TextView, LinearLayout 등입니다. 지금까지는 존재하지 않는 문제임을 알고 있습니다. 그러나 뷰/레이아웃을 어떻게 든 미리 가져올 수 있거나 캐시 @CommonsWare에서로드 할 수있는 방법이 있다면 생각하고있었습니다. – Odin

관련 문제