2017-01-19 6 views
0

Xamarin.Android로 Android 앱을 개발 중이며 초당 약 50 회 View를 업데이트하려고합니다. RelativeLayout.LayoutParams를 사용하여 뷰의 여백을 변경하여 가속도계 값에 따라 주위를 이동합니다. 불행히도 이것은 안드로이드가 충분히 빨리 다시 그리지 않는 것처럼 보이기 때문에 잘 작동하지 않습니다. LayoutParams에 대한 대안이 있습니까? 아니면 Android에서 내 View를 더 빨리 다시 그리도록 강요 할 수 있습니까? 보기는 단지 작은 ImageView입니다. 그것을 새로운 위치로 끌어들이는 일이 많이 있어서는 안됩니다. 그래서 이것이 왜 안드로이드에 대한 문제인지 나는 모른다. 미리 감사드립니다.Xamarin Android UI 업데이트가 너무 느림

+1

'초당 약 50 회 뷰보기 '가 초당 너무 많이 보인다. UI 성능 디버깅 방법을 읽어 보시기 바랍니다. https://developer.android.com/studio/profile/systrace.html –

+0

댓글과 링크를 제공해 주셔서 감사합니다. 그러나 초당 약 25 회의 업데이트로 돌아 가면 느리게 동작하는 것처럼 보이게됩니다. –

+0

그건 그렇고, 내 Lumia 650 (느린 Windows Phone)은 매력 (정확히 100 CPU 틱 업데이트)과 같은 코드를 실행하고 있습니다. 그렇다면 내 새 Android 기기가 왜 그렇게 할 수 없습니까? –

답변

0

좋아, 문제는 안드로이드 성능이 아닌 것처럼 보입니다. 내 코드에서 스레드 기반 오류가있었습니다. 그 죄송합니다. 그런데 그 해결책이 무엇인지 말해주고 싶습니다.

RelativeLayout을 확장하고 onDraw() 메서드를 덮어 쓰는 새 클래스를 작성했습니다. 이 클래스는 계산과 이동에 필요한 다른 것들을 감 쌉니다. View도 이동하려면 postInvalidate() 메서드를 호출해야했습니다.

감사합니다.