2017-11-11 1 views
-1

제목과 비슷합니다.
물론, 화면의 비율이 다르다는 것을 알고 있으며, 레이아웃이 모든 화면에서 정확하게 동일하지는 않습니다. 레이아웃 구성 요소가 화면 크기와 관련하여 서로 크기와 거리를 대략 동일하게 유지하기 만하면됩니다.
상자의 경우 RelativeLayoutdp을 사용하고 px 대신 텍스트의 경우 sp을 사용하지만 여전히 올바르게 작동하지 않습니다. 그것을 도울 수 있다면, 여기
레이아웃을 모든 화면 크기와 동일하게 만드는 방법은 무엇입니까?

코드 :

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:id="@+id/activity_main" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:paddingBottom="@dimen/activity_vertical_margin" 
    android:paddingLeft="@dimen/activity_horizontal_margin" 
    android:paddingRight="@dimen/activity_horizontal_margin" 
    android:paddingTop="@dimen/activity_vertical_margin" 
    tools:context="com.whitecake.wordsknowledgetest.MainActivity"> 

    <TextView 
     android:id="@+id/wordLabel" 
     android:layout_width="wrap_content" 
     android:layout_height="50dp" 
     android:layout_alignParentEnd="true" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentRight="true" 
     android:layout_alignParentStart="true" 
     android:text="TEST" 
     android:textAlignment="center" 
     android:textAppearance="@style/TextAppearance.AppCompat.Title" 
     android:textSize="30sp" /> 

    <EditText 
     android:id="@+id/wordInput" 
     android:layout_width="wrap_content" 
     android:layout_alignParentEnd="true" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentRight="true" 
     android:layout_alignParentStart="true" 
     android:layout_below="@+id/wordLabel" 
     android:layout_marginTop="26dp" 
     android:ems="10" 
     android:inputType="textPersonName" 
     android:text="TEST" 
     android:textAlignment="center" 
     android:textAppearance="@style/TextAppearance.AppCompat.Title" 
     android:layout_height="50dp" 
     android:textSize="30sp" /> 

    <Button 
     android:id="@+id/checkButton" 
     android:layout_height="100dp" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" 
     android:layout_below="@+id/wordInput" 
     android:layout_marginTop="23dp" 
     android:onClick="check" 
     android:text="CHECK!" 
     android:layout_width="180dp" 
     android:textAppearance="@style/TextAppearance.AppCompat.Display1" /> 

    <Button 
     android:id="@+id/invertLangButton" 
     android:layout_alignParentBottom="true" 
     android:onClick="invertLang" 
     android:text="INVERT LANGUAGES" 
     android:layout_height="75dp" 
     android:textAppearance="@style/TextAppearance.AppCompat.Large" 
     android:layout_width="240dp" /> 

    <Button 
     android:id="@+id/switchModeButton" 
     android:layout_height="75dp" 
     android:layout_alignParentBottom="true" 
     android:layout_alignParentEnd="true" 
     android:layout_alignParentRight="true" 
     android:onClick="switchMode" 
     android:text="SWITCH MODE" 
     android:layout_toEndOf="@+id/nextButton" 
     android:layout_width="250dp" 
     android:textAppearance="@style/TextAppearance.AppCompat.Large" /> 

    <TextView 
     android:layout_width="250dp" 
     android:layout_height="wrap_content" 
     android:id="@+id/resultLabel" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" 
     android:layout_alignTop="@+id/countLabel" 
     android:layout_toStartOf="@+id/switchModeButton" 
     android:textAppearance="@style/TextAppearance.AppCompat.Display2" /> 

    <TextView 
     android:id="@+id/countLabel" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="" 
     android:textAppearance="@style/TextAppearance.AppCompat.Large" 
     android:layout_below="@+id/showButton" 
     android:layout_alignParentRight="true" 
     android:layout_alignParentEnd="true" 
     android:layout_toRightOf="@+id/nextButton" 
     android:layout_toEndOf="@+id/nextButton" /> 

    <Button 
     android:id="@+id/nextButton" 
     android:layout_height="100dp" 
     android:onClick="next" 
     android:text="NEXT!" 
     android:layout_width="180dp" 
     android:elevation="0dp" 
     android:layout_alignTop="@+id/checkButton" 
     android:layout_centerHorizontal="true" 
     android:layout_marginTop="0dp" 
     android:textAppearance="@style/TextAppearance.AppCompat.Display1" /> 

    <Button 
     android:id="@+id/showButton" 
     android:layout_height="100dp" 
     android:onClick="show" 
     android:text="SHOW!" 
     android:layout_width="180dp" 
     android:layout_alignTop="@+id/nextButton" 
     android:layout_alignParentRight="true" 
     android:layout_alignParentEnd="true" 
     android:layout_marginTop="0dp" 
     android:textAppearance="@style/TextAppearance.AppCompat.Display1" /> 

    <EditText 
     android:layout_width="wrap_content" 
     android:inputType="textPersonName" 
     android:text="words" 
     android:ems="10" 
     android:id="@+id/fileName" 
     android:textAlignment="viewEnd" 
     android:textSize="20dp" 
     android:layout_above="@+id/invertLangButton" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" 
     android:layout_height="50dp" /> 

    <TextView 
     android:text=".txt" 
     android:layout_width="wrap_content" 
     android:id="@+id/extension" 
     android:textAlignment="gravity" 
     android:textSize="20dp" 
     android:layout_alignTop="@+id/fileName" 
     android:layout_toRightOf="@+id/fileName" 
     android:layout_toEndOf="@+id/fileName" 
     android:layout_marginTop="13dp" 
     android:layout_height="50dp" /> 

    <Button 
     android:text="LOAD" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_above="@+id/switchModeButton" 
     android:layout_toLeftOf="@+id/switchModeButton" 
     android:layout_toStartOf="@+id/switchModeButton" 
     android:onClick="loadFile" 
     android:id="@+id/loadButton" 
     android:layout_alignTop="@+id/fileName" 
     android:textSize="20sp" /> 
</RelativeLayout> 
+0

왜 RelativeLayout을 사용하고 있는지 궁금합니다. 방향과 무게를 가진 LinearLayout을 사용하십시오. – Kuls

+0

세로 방향 만 사용하고 싶습니다. '무게'는 무엇을합니까? -? 솔직히 안드로이드 코딩에 익숙하지 않습니다. –

답변

-1

에게 당신을 화면 :

는 여기가 7 "

그리고 5 화면"에 보이는 방법 프로젝트의 res 섹션에 새 폴더를 만들어야합니다.

다른 화면 크기는
res ----> 에 다른 폴더를 만들고이 새로 만든 폴더에 xml 파일을 복사하여 붙여 넣으십시오.

키워드 land 및 port가 자동으로 작동합니다.

레이아웃 sw320dp 레이아웃 sw320dp-땅 ----> 일반 레이아웃 sw320dp 포트

레이아웃 sw360dp 레이아웃 sw360dp-땅 레이아웃 sw360dp 포트

레이아웃 - sw800dp ----------------- 태블릿보기 레이아웃 - sw800dp - 땅 레이아웃 - sw800dp - 포트

레이아웃 - 작은 - - 작은 화면 레이아웃 - 소형 - 땅 레이아웃 작은 포트

레이아웃 큰 -------------------- 큰 화면 레이아웃 큰 땅 레이아웃 큰 포트

이 링크보기 http://prntscr.com/h91tpi

관련 문제