1

나는 안드로이드 UI를 디자인하기위한 모범 사례를 조사 해왔다. 실제 코드를 프로그래밍하는 데 대한 많은 정보가 있지만 Android 용 고급 xml 디자인에 대한 자습서는 거의 없습니다. 튜토리얼을 알고 있다면 여기에 링크하십시오.Android 앱 레이아웃 - LinearLayout, TableLayout 및 RelativeLayout Ugh?

나는 현재 좀 더 복잡한 UI 레이아웃을 얻기 위해 알맞은 결과를 가진 TableLayout을 사용하고 있습니다. 나는 TableLayout에 고정 된 너비 또는 높이 값을 제공 할 필요가 없다는 것을 좋아하지만, 두 개의 버튼 사이에 빈 같은 이상한 해결 방법을 사용하여 가짜 제 3 열을 생성해야했습니다.

스페이서에 테이블과 가짜 RelativeLayouts를 사용하는 것보다 더 좋은 방법이 있어야한다는 것을 알고 있습니다. 누군가 다른 기기에서 RelativeLayouts의 작동 원리를 설명해 주실 수 있습니까? 예를 들어, LDPI 장치가있는 경우 너비와 높이가 작은 픽셀이 있으므로 UI가 다르게 표시됩니까? 너비 속성으로 480px (hdpi 표준 너비)를 사용하고 UI가 LDPI 장치에 표시되면 어떻게됩니까? 화면이 오버플로됩니까?

내 테이블과 스페이서 트릭은 잘 작동하지만 거의 사용하기에 충분하지만 가능한 한 대부분의 장치에서 작동하도록 UI를 올바르게 디자인하고 싶습니다. 올바른 방향으로 나를 가리켜주십시오, 환호!

+1

우선, 픽셀이 아닌 딥 (밀도 독립 픽셀)에서 UI를 생각하고 디자인하는 것이 좋습니다. 거기에있는 유닛에 대한 좋은 게시물보기 : http://stackoverflow.com/questions/2025282/difference-of-px-dp-dip-and-sp-in-android 화면 해상도 및 밀도에 따라 대체 리소스를 제공하는 방법을 참조하십시오. (다른 기준 중) : http://developer.android.com/guide/topics/resources/providing-resources.html – darma

답변

2

RelativeLayout은 좋은 방법입니다. 보기의 거리와 크기를 dp로 설정하면 dp의 거리가 MDPI 화면의 픽셀로 취급되며 레이아웃이 LDPI 및 HDPI 화면에서 동일하게 공간을 채울 수 있도록 크기가 조정됩니다. Views에 관한 Android 개발자 tutorial의 RelativeLayouts에 대한 좋은 섹션이 있습니다.

+0

좋은 읽을 거리를 가져 주셔서 감사합니다! – AutoM8R