2015-09-03 49 views
1

我想在列表視圖中將複選框右對齊大部分屏幕。在列表視圖中對齊複選框最右側

我的佈局如下所示

<?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="wrap_content" 
android:orientation="horizontal"> 

<LinearLayout 
    android:layout_width="0dp" 
    android:layout_height="wrap_content" 
    android:layout_weight="9" 
    android:orientation="vertical"> 

    <TextView 
     android:id="@+id/nameTextView" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:text="Name" 
     android:textSize="30sp" /> 

    <TextView 
     android:id="@+id/numberTextView" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:text="Number" 
     android:textSize="25sp" /> 

</LinearLayout> 

<CheckBox 
    android:id="@+id/checkBox" 
    android:layout_width="0dp" 
    android:layout_height="wrap_content" 
    android:layout_gravity="right|center" 
    android:layout_weight="2" 
    android:gravity="right|center" /> 

但是當我運行此我得到的輸出爲複選框旁邊的TextView

Output of code

發現錯誤..其在mainactivity ..我已經把列表視圖的寬度作爲包裝內容而不是填寫父母

+1

放佈局重量1到上述複選框您的線性佈局和刪除體重從複選框給它固定的寬度 – Pavan

+0

@Pavan它不工作...整個textviews成爲陰影,我甚至不能看複選框 –

+0

您是否在複選框中添加了固定寬度檢查我的更新答案,您可以根據您的要求修改 – Pavan

回答

1
 <?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="wrap_content" 
    android:gravity="center" 
    android:orientation="horizontal"> 

    <LinearLayout 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:orientation="vertical"> 

     <TextView 
      android:id="@+id/nameTextView" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:text="Name" 
      android:textSize="30sp" /> 

     <TextView 
      android:id="@+id/numberTextView" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:text="Number" 
      android:textSize="25sp" /> 

    </LinearLayout> 

    <CheckBox 
     android:id="@+id/checkBox" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 

     /> 
</LinearLayout> 
+1

不工作我看不到複選框 –

2

使用RelativeLayout爲ChechBox部分和添加android:layout_alignParentRight="true"。嘗試這種方式,讓我通知。

好的,您可以使用佈局權重(線性佈局)在同一行設置2個Textview和ChechBox。並設置重力,ChechBox的權重佈局。

+1

將複選框置於相對佈局中會使整個工作不起作用。 –

+0

檢查我的更新的答案 –

+0

你能告訴我如何編輯我的代碼如上所示... –

0

檢查這一項

<?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"> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:orientation="vertical"> 

     <TextView 
      android:id="@+id/nameTextView" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:text="Name" 
      android:textSize="30sp" /> 

     <TextView 
      android:id="@+id/numberTextView" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:text="Number" 
      android:textSize="25sp" /> 

    </LinearLayout> 

    <CheckBox 
     android:id="@+id/checkBox" 
     android:layout_width="25dp" 
     android:layout_height="wrap_content" 
     android:layout_gravity="right|center" 
     android:layout_marginRight="2dp" 
     android:gravity="right|center" /> 
    </LinearLayout>