수평 선형 레이아웃 안드로이드에서 위젯을 올바르게 정렬하는 방법은 무엇입니까?
이것은 내가 사용하는 코드이며 작동하지 않습니다.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal">
<TextView android:text="TextView" android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="right">
</TextView>
</LinearLayout>
올바른 요소 앞에 View
가로 내부 에 빈칸을 추가 LinearLayout
하십시오. 예 :
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<View
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_weight="1" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
모든 것이 오른쪽에 있지 않게하려면 LinearLayout의 중력을 "오른쪽"으로 변경하지 마십시오.
시험:
- TextView의 너비 를
fill_parent
- TextView의 중력 을
right
암호:
<TextView
android:text="TextView"
android:id="@+id/textView1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="right">
</TextView>
alcsan의 답변을 보완하기 위해 Space
API 14 (Android 4.0 ICE_CREAM_SANDWICH) 이후 문서에서 사용할 수 있습니다 .
Space는 범용 레이아웃에서 구성 요소 사이에 간격을 만드는 데 사용할 수있는 간단한 View 하위 클래스입니다.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >
<Space
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_weight="1" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView"
android:gravity="right" />
</LinearLayout>
14 미만의 API 레벨을 지원하는 앱의 경우 android.support.v4.widget.Space
Android Support Library r22.1.0 이후 가 있습니다.
와 선형 레이아웃
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/select_car_book_tabbar"
android:gravity="right" >
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:src="@drawable/my_booking_icon" />
</LinearLayout>
와 FrameLayout이
<FrameLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/select_car_book_tabbar">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical|right"
android:src="@drawable/my_booking_icon" />
</FrameLayout>
와 RelativeLayout의
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/select_car_book_tabbar">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerInParent="true"
android:src="@drawable/my_booking_icon" />
</RelativeLayout>
보기를 설정하면 layout_weight="1"
트릭이됩니다.!
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:id="@+id/textView1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1" />
<RadioButton
android:id="@+id/radioButton1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
android:gravity="right"
LinearLayout에 추가하십시오 . (가) 가정 TextView
이있다layout_width="wrap_content"
android:gravity="right"
라이너 레이아웃을 추가 하십시오.
가장 쉬운 방법으로 수행했습니다.
하나의 RelativeLayout을 가져 와서 오른쪽 에 배치하려는 아이 뷰 를 넣으십시오 .
<LinearLayout
android:id="@+id/llMain"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#f5f4f4"
android:gravity="center_vertical"
android:orientation="horizontal"
android:paddingBottom="20dp"
android:paddingLeft="15dp"
android:paddingRight="15dp"
android:paddingTop="20dp">
<ImageView
android:id="@+id/ivOne"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_launcher" />
<TextView
android:id="@+id/txtOne"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:text="Hiren"
android:textAppearance="@android:style/TextAppearance.Medium"
android:textColor="@android:color/black" />
<RelativeLayout
android:id="@+id/rlRight"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="right">
<ImageView
android:id="@+id/ivRight"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="5dp"
android:src="@drawable/ic_launcher" />
</RelativeLayout>
</LinearLayout>
그것이 도움이되기를 바랍니다.
linear layout
와 layout_width="fill_parent"
도 같은과 위젯 layout width
+는 gravity as right
오른쪽으로 정렬한다.
TextView
다음 예제 topicTitle
에서 왼쪽과 topicQuestions
오른쪽 에 2 초를 사용 하고 있습니다.
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingLeft="20dp"
android:orientation="horizontal">
<TextView
android:id="@+id/topicTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="18sp"
android:textStyle="bold" />
<TextView
android:id="@+id/topicQuestions"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="right"
android:textSize="18sp"
android:textStyle="bold" />
</LinearLayout>
</RelativeLayout>
산출
RelativeLayout을 사용해야하고 좋아 보일 때까지 드래그해야합니다. :)
<ImageView
android:id="@+id/button_info"
android:layout_width="30dp"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:layout_marginRight="10dp"
android:contentDescription="@string/pizza"
android:src="@drawable/header_info_button" />
</RelativeLayout>
layout_width 내부의 텍스트를 정렬 하기 android:layout_width="match_parent"
때문에 layout_width를 변경 gravity:"right"
하십시오. 랩 내용을 선택하면 이동할 위치가 없지만 부모 일치를 선택하면 오른쪽으로 갈 수 있습니다.
추가 뷰 또는 요소를 사용할 필요가 없습니다.
// 매우 쉽고 간단합니다
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
>
// 이것은 왼쪽 정렬입니다
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="No. of Travellers"
android:textColor="#000000"
android:layout_weight="1"
android:textStyle="bold"
android:textAlignment="textStart"
android:gravity="start" />
// 이것은 올바른 정렬입니다
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Done"
android:textStyle="bold"
android:textColor="@color/colorPrimary"
android:layout_weight="1"
android:textAlignment="textEnd"
android:gravity="end" />
</LinearLayout>
TextView의 경우 :
<TextView
android:text="TextView"
android:id="@+id/textView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="right"
android:textAlignment="gravity">
</TextView>
뷰를 추가하는 것은 약간 어렵고 다음과 같이 모든 화면 너비를 포함합니다.
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<View
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_weight="1" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
이 코드를 사용해보십시오 :
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Create Account"/>
</LinearLayout>
다음은 샘플입니다. 정리하는 열쇠는 다음과 같습니다
android:layout_width="0dp"
android:layout_weight="1"
완전한 코드
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="5dp">
<TextView
android:id="@+id/categoryName"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="abcd" />
<TextView
android:id="@+id/spareName"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="efgh" />
</LinearLayout>
다음과 같이 match_parent 및 gravity를 사용하여 TextView 텍스트를 오른쪽으로 설정하십시오.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal">
<TextView android:text="TextView" android:id="@+id/textView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="right">
</TextView>
</LinearLayout>
이 시도..
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal"
android:gravity="right" >
<TextView android:text="TextView" android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</TextView>
</LinearLayout>
'IT' 카테고리의 다른 글
iOS-CocoaPods로 빌드 실패 헤더 파일을 찾을 수 없습니다 (0) | 2020.05.16 |
---|---|
SD 카드에 자동으로 디렉토리를 만드는 방법 (0) | 2020.05.16 |
Uri에서 비트 맵을 얻는 방법? (0) | 2020.05.16 |
잠금 파일을 작성 / 열 수 없습니다. /data/mongod.lock errno : 13 권한이 거부되었습니다. (0) | 2020.05.16 |
Android Studio에서 매니페스트 합병이 여러 오류로 실패 (0) | 2020.05.16 |