0

2 개의 TextView와 EditText로 구성된 3 개의 LinearLayout으로 구성된 LinearLayout을 가지고 있습니다. 세 번째 EditText에 힌트를 추가하면 두 번째 및 세 번째 TextViews 사이에 많은 공백이 생기고 세 번째 후에도 끝납니다.안드로이드 - EditText의 힌트가 View/Layout의 크기를 변경합니다.

코드 및 이미지는 다음과 같습니다. 무엇이 이것을 일으킬 수 있습니까? 힌트없이

 <LinearLayout 
     android:orientation="vertical" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:visibility="gone" 
     android:id="@+id/self" 
     > 

     <LinearLayout 
      android:orientation="horizontal" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
     > 
      <TextView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:text="@string/name" 
       android:layout_marginLeft="5dp" 
       android:padding="5dp" 
       android:textSize="22sp" 
      /> 
      <TextView 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:text="Sample Name" 
       android:padding="5dp" 
       android:id="@+id/self_name_show" 
       android:textSize="22sp" 
       android:textColor="#0099CC" 
      /> 
      <EditText 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:visibility="gone" 
       android:id="@+id/self_name_edit" 
       android:inputType="text" 
       android:hint="@string/enter_name" 
      /> 
     </LinearLayout> 

     <LinearLayout 
      android:orientation="horizontal" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
     > 
      <TextView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:text="@string/address" 
       android:layout_marginLeft="5dp" 
       android:padding="5dp" 
       android:textSize="22sp" 
      /> 
      <TextView 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:text="Sample Address" 
       android:padding="5dp" 
       android:id="@+id/self_address_show" 
       android:textSize="22sp" 
       android:textColor="#0099CC" 
      /> 
      <EditText 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:id="@+id/self_address_edit" 
       android:visibility="gone" 
       android:inputType="text" 
       android:hint="@string/enter_address" 
      /> 
     </LinearLayout> 

     <LinearLayout 
      android:orientation="horizontal" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
     > 
      <TextView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:text="@string/phone" 
       android:layout_marginLeft="5dp" 
       android:padding="5dp" 
       android:autoLink="all" 
       android:textSize="22sp" 
      /> 
      <TextView 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:text="Sample Phone" 
       android:padding="5dp" 
       android:id="@+id/self_phone_show" 
       android:textSize="22sp" 
       android:textColor="#0099CC" 
      /> 
      <EditText 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:id="@+id/self_phone_edit" 
       android:phoneNumber="true" 
       android:hint="@string/enter_phone" 
      /> 
     </LinearLayout> 
     <Button 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_gravity="right" 
      android:text="@string/edit" 
      android:id="@+id/edit_self_button" 
      android:onClick="toggleSelfEdit" 
     /> 
     <Button 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_gravity="right" 
      android:text="@string/update" 
      android:id="@+id/update_self_button" 
      android:visibility="gone" 
     /> 
    </LinearLayout> 

: Without hint:

힌트는 : With hint:

답변

2

나는 세 번째의 EditText에 android:visibility="gone"를 작성 잊어 생각합니다. 나는 xml을 시도해 보았고 edittext에 "visibility ="gone "을 넣었을 때 XML이 첫 번째 스크린 샷처럼 보였습니다 :)

+0

고마워요. 고마워요. – thekthuser

+0

나는 힌트가 적용되기 전에 제로 공간을 차지하고 있었고 나중에 가시성을 수동으로 설정해야한다고 생각한다. – thekthuser

+0

예 동의합니다. 또 다른 해결책은 editview의 높이가 wrap_content가 아닌 코드에서 20dp와 직접 같다고 선언하는 것입니다. 힌트 텍스트 크기로 인해 문제가 발생할 수 있습니다. – Jaky71

관련 문제