답변:
나는 당신이 이것을하고 있다고 생각합니다 : android:layout_width = "wrap_content"
이것이 사실이라면, 이렇게하십시오 :android:layout_width = "match_parent"
더 좋은 솔루션은 가장 간단한 솔루션이고 코드 동작에서 수정이 적은 솔루션입니다 .
이 속성을 2 속성으로 만 해결할 수 있다면 TextView
어떨까요?
LinearLayout
자녀의 행동 을 바꿀 수있는 속성 을 변경해야하는 대신 LinearLayout
?
이 방법을 사용하면 LinearLayout
속성과 동작 을 변경할 필요가 없으며 대상에 다음 두 속성 만 추가하면됩니다 TextView
.
android:gravity="right"
android:textAlignment="gravity"
미래에 다른 문제를 일으킬 수있는 기회를 얻는 대신 목표를 변경하여 솔루션을 해결하는 것이 더 나은 방법은 무엇입니까? 생각 해봐 :)
TextView
속성을 사용 하고 있다고 확신 하십니까? -당신은 여기 참조에서 속성을 확인할 수 있습니다 : developer.android.com/reference/android/view/…
(LinearLayout) android:layout_width="match_parent"
과 TextView를 만듭니다android:layout_gravity="right"
그것이 RelativeLayout
당신이 사용할 수있는 경우android:layout_toRightOf="@id/<id_of_desired_item>"
또는
right
장치의 모서리에 정렬 하려면 장소android:layout_alignParentRight="true"
많은 개발자가 알고 있기 때문에 WEB을 사용하여 중력 개념을 설명하겠습니다 .
android_layout_gravity
행동하다 float:left|right|top|bottom
android_gravity
작동 하는 반면text_align:centre|left|right
안드로이드에서 float는 android_layout_gravity이고 text_align :은 android_gravity입니다.
android_layout_gravity는 부모를 기준으로 적용됩니다. 여기서 android_gravity는 하위 또는 내부 콘텐츠에 적용됩니다.
참고 의보기 match_parent 인 경우 (이 센터에 공간이있는 경우) android_gravity에만 작동합니다.
아래는 나를 위해 작동합니다.
<TextView
android:id="@+id/tv_username"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Sarah" />
<TextView
android:id="@+id/tv_distance"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/tv_username"
android:layout_alignParentEnd="true"
android:layout_toEndOf="@+id/tv_username"
android:text="San Marco"
android:textAlignment="viewEnd" />
두 번째 TextView 의 android:layout_alignParentEnd
및 android:textAlignment
설정을 참고하십시오 .
이것은 목적을 달성해야한다
android:textAlignment="textStart"
제 경우 Relative Layout
에는emptyString
한 시간 동안이 문제를 해결 한 후. 이것 만이 나를 위해 일했습니다 :
android:layout_toRightOf="@id/welcome"
android:layout_toEndOf="@id/welcome"
android:layout_alignBaseline="@id/welcome"
layout_toRightOf
또는 layout_toEndOf
둘 다 작동하지만 더 잘 지원하기 위해 두 가지를 모두 사용했습니다.
더 명확하게하려면 :
이것이 내가하려고했던 일이었습니다.
그리고 이것은 에뮬레이터의 출력이었습니다.
나열한 것:
<TextView
android:id="@+id/welcome"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="16dp"
android:text="Welcome "
android:textSize="16sp" />
<TextView
android:id="@+id/username"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@id/welcome"
android:layout_toRightOf="@id/welcome"
android:text="@string/emptyString"
android:textSize="16sp" />
그것을주의해라:
android:layout_width="wrap_content"
공장Gravity
사용되지 않습니다<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
android:id="@+id/tct_postpone_hour"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:layout_gravity="center"
android:gravity="center_vertical|center_horizontal"
android:text="1"
android:textSize="24dp" />
</RelativeLayout>
수평 및 수직 중앙에서 1 번 정렬합니다.
추가하려고 android:gravity="center"
으로TextView