2012-02-21 14 views
18

mam layoutuWyrównywanie ImageView do prawej układ android

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="horizontal" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="#FFFFFF"> 

    <TextView android:id="@+id/groupname" 
     android:paddingLeft="50px" 
     android:textSize="16px" 
     android:background="#FFFFFF" 
     android:textColor="#000000" 
     android:textStyle="normal" 
     android:layout_width="wrap_content" 
     android:layout_height="50px"/> 
    <ImageView 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_gravity="right" 
      android:layout_marginRight="6dp" 
      android:background="#ffffff" 
      android:src="@drawable/sort"/> 

</LinearLayout> 

Rendering like this presently I want to render like this

Rendering dzieje się teraz jak w pierwszym obrazie, ale chciałem, aby uczynić jak w drugim obrazie całkowicie wyrównany do prawej. jakakolwiek pomoc byłaby przydatna.

Czekamy na odpowiedź. dzięki.

+1

Ludzie, którzy wymienione RelativeLayout jako rozwiązanie dość dużo mieć odpowiednie rozwiązanie. Powiedzenie nam, że nie pracujemy, nie pomaga sobie ani nikomu. – Maurice

+0

@Maurice dzięki, ale dla mnie odpowiedź nie zadziałała dla RelativeLayout, to jest to, co odpowiedziałem. – Mukunda

Odpowiedz

43
<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="horizontal" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="#FFFFFF"> 

    <TextView android:id="@+id/groupname" 
     android:paddingLeft="50dp" 
     android:textSize="16dp" 
     android:textColor="#000000" 
     android:textStyle="normal" 
     android:layout_width="fill_parent" 
     android:layout_height="50dp" 
     android:layout_weight="0.9" 
     android:background="@color/black"/> 
    <ImageView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_gravity="right" 
      android:background="#ffffff" 
      android:src="@drawable/checkin" 
      android:layout_weight="0.1"/> 

</LinearLayout> 

Spróbuj nadzieję, że to pomoże.

Prview1 enter image description here

+0

dzięki. działa idealnie. – Mukunda

+0

Można to również zrobić bez layout_weight w widoku obrazu, jeśli obraz ma stałą szerokość. Wystarczy ustawić layout_weight na textview z wartością 1. –

11

Użyj RelativeLayout jako układu nadrzędnego.

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
       android:layout_width="fill_parent" 
       android:layout_height="fill_parent"> 

    <TextView android:id="@+id/groupname" 
       android:paddingLeft="50px" 
       android:textSize="16px" 
       android:textColor="#000000" 
       android:textStyle="normal" 
       android:layout_width="wrap_content" 
       android:layout_height="50px"/> 

    <ImageView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentRight="true" 
      android:layout_marginRight="6dp" 
      android:src="@drawable/ncc"/> 

</RelativeLayout> 
+1

dzięki nie działa. – Mukunda

3
<?xml version="1.0" encoding="utf-8"?> 

<TextView android:id="@+id/groupname" 
    android:paddingLeft="50px" 
    android:textSize="16px" 
    android:background="#FFFFFF" 
    android:textColor="#000000" 
    android:textStyle="normal" 
    android:layout_width="wrap_content" 
    android:layout_height="50px"/> 
<ImageView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_gravity="right" 
     android:layout_marginRight="6dp" 
     android:background="#ffffff" 
     android:layout_alignParentRight="true" 
     android:src="@drawable/sort"/> 

+0

dziękuję, ale to nie działa. – Mukunda

0

Albo użyć RelativeLayout i ustaw właściwość TextView następująco:

layout_width=fill_parent 
layout_height=wrap_content 
left_of="@+id/imgView" 

i ImageView

layout_width=wrap_content 
layout_height=wrap_content 
alignparentright=true 
+0

dzięki nie działa. – Mukunda

23

stosowanie android: layout_weight = "1" na widoku tekstu

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="horizontal" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="#FFFFFF"> 

    <TextView android:id="@+id/groupname" 
    android:paddingLeft="50px" 
    android:textSize="16px" 
    android:layout_weight="1" 
    android:background="#FFFFFF" 
    android:textColor="#000000" 
    android:textStyle="normal" 
    android:layout_width="0dp" 
    android:layout_height="50px"/> 
<ImageView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="right" 
     android:layout_marginRight="6dp" 
     android:background="#ffffff" 
     android:src="@drawable/sort"/> 

</LinearLayout> 
+0

dzięki, to jest dobre! – AVEbrahimi

+0

Idealne rozwiązanie! – Surekha

0

należy dodać coś takiego ... w xml do obiektu, który chcesz wyrównać tuż ...

android:layout_alignParentRight="true" 
android:layout_marginRight="..dp" 
+0

dziękuję, ale to nie będzie możliwe, jak ustawić gęstości pikseli dla różnych ekranów. – Mukunda

+0

tworząc foldery/duże,/xlarge,/małe układy dla różnych ekranów ... – timonvlad

3

Spróbuj z RelativeLayout.

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="#FFFFFF"> 

    <TextView 
     android:id="@+id/groupname" 
     android:layout_width="wrap_content" 
     android:layout_height="50px" 
     android:background="#FFFFFF" 
     android:paddingLeft="50px" 
     android:textColor="#000000" 
     android:textSize="16px" 
     android:textStyle="normal" /> 

    <ImageView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentRight="true" 
     android:background="#ffffff" 
     android:src="@drawable/ic_launcher" /> 

</RelativeLayout> 
+0

dzięki temu również nie działa. – Mukunda