2010-05-01 8 views
3

캔버스를 사용하여 물건을 그릴 때 SurfaceView를 사용하고 있습니다. 문제는 기본적으로 모든 것을 가로로 표시하고 장치의 위치에 관계없이 그대로 유지하기를 원한다는 것입니다. Surface XML 파일을 사용하지 않고 SurfaceView를 보여줍니다. 대신 SurfaceView를 확장하는 클래스가 있고 그것을 표시하기 위해 setContentView(new Panel(this));을 사용합니다.SurfaceView를 항상 수평으로 만드는 방법은 무엇입니까?

도움 주셔서 감사합니다.

답변

6

문제는 해당 장치가 어떤 장치인지에 따라 장치 또는 키보드의 위치를 ​​기준으로 회전하려는 것입니다. 액티비티가 순환 게재를 무시하도록하려면또는 android:screenOrientation="landscape"을 매니페스트에 추가합니다. 또한 android:configChanges="keyboardHidden|orientation"을 활동에 추가하여 Android가 방향을 변경했을 때 Android가 활동을 파괴하고 다시 만들지 않아도됩니다.

이와 관련된 샘플 프로젝트는 herehere을 참조하십시오.

관련 문제