2011-11-22 4 views
0

에뮬레이터를 기반으로 레이아웃을 만들었지 만 실제 장치에서 내 앱을 실행했는데 모든 레이아웃이 엉망입니다. 나는 그것을 고치는 법을 모른다. 여기 내 XML 파일에 대한 코드,안드로이드 레이아웃이 전화에 엉망이되었습니다

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:orientation="vertical" 
android:background="@drawable/mainback" > 

<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="23dip" 
    android:layout_marginRight="15dip" 
    android:layout_marginTop="255dip" 
    android:orientation="vertical" > 

    <TextView 
     android:layout_width="276dp" 
     android:layout_height="132dp" 
     android:textSize="15dp" 
     android:gravity="center_vertical" 
     android:text="some text" 
     android:textColor="#4C2016"/> 

    <Button 
     android:id="@+id/special" 
     android:layout_width="131dp" 
     android:layout_height="40dp" 
     android:background="@drawable/cc" 
     android:layout_marginTop="20dip" 
     android:layout_marginLeft="75dip" 
     android:textSize="17dp" 
     android:textStyle="bold" 
     android:text="Specials" 
     android:textColor="#F6E6C6" /> 
</LinearLayout> 
이다

`

그것은 좋지 않을까 어떤 하나의 방법이 코드 여기

를 해결하는 말해 줄 수있다는 그것이 어떻게 생겼는지의 스냅 샷 xml 파일

enter image description here

이 그것을 전화처럼 보이는 방법이다,

,

enter image description here

화상과 오렌지의 텍스트 배경 이미지 및 텍스트 뷰 및 뷰에 추가하는 버튼의 일부이다.

+7

보다 낮은 API를 대상으로하는 경우 'fill_parent'와 'match_parent'를 대체? 에뮬레이터와 비교하여 레이아웃의 문제점을 정확하게 알려줄 수 있습니까? –

+1

"messed up"을 정의해야합니다. 그렇지 않으면 ... "엉망이 된"것이 무엇을 의미하는지 알지 못합니다. – Jack

+0

정확하게 엉망이 된 것을 게시 할 수 있습니까? 어떻게보아야합니까? –

답변

0

어떤 API 수준을 사용하고 있습니까? 동일한 파일에서 "fill_parent"및 "match_parent"를 사용하고 있습니다. API 레벨 8부터 fill_parent가 math_parent로 바뀝니다. 또한 API 레벨 8 (인식되지 않음) 이하의 프로젝트에서 match_parent를 사용하는 데 문제가 있었으며, visa versa fill_parent는 API 8 이상을 사용하는 프로젝트에서 레이아웃 문제를 일으켰습니다.

더 나은 도움을 얻으려면 당신이 당신의 실행 APP의 스크린 샷을 게시하시기 바랍니다. 그래서 우리는 더 나은 레이아웃 문제가 무엇인지 볼 수 있습니다.

을 좋은 개발 되세요! 하드 코딩 된 값은 레이아웃이 장치의 화면 크기와 해상도에 따라 다르게 보일 수 있습니다

0

합니다.

대신에 마진에 의존하는 대신 이미지 아래의 텍스트 ('android : layout_marginTop = "255dip")를 사용하면 이미지를 ImageView에 넣을 수 있습니다.' 그런 다음 TextView가 이미지 아래에 배치됩니다. 이미지 뷰의 아래쪽 여백 또는 텍스트 뷰의 위쪽 여백을 사용하여 거리를 미세 조정합니다.

TextView의 * layout_height *에 'wrap_content'를 사용하고 고정 값 대신 * layout_width *에 'fill_parent'를 사용하십시오.

또한 - 응용 프로그램이 당신이 전화에 가난한 레이아웃의 스크린 샷을해야합니까 8

<LinearLayout> 
    <ImageView/> 
    <TextView/> 
    <Button/> 
</LinearLayout> 
관련 문제