Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to put 50% for width

I have a LinearLayout in horizontal orientation and 2 ImageView and I want to make that ImagesView fill 50% of the screen on width, to work in every cellphone or tablet with diferent sizes.

Something like this:

 +-------------+   
 |_____________|     
 |      |      |  
 | 50%  | 50%  |  
 |      |      |   
 |-------------|
 |             |
 +-------------+

Best so far:

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


        <ImageView
            android:id="@+id/logo_c"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/logo_animado" />

        <ImageView
            android:id="@+id/logo_t"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:src="@drawable/logo_animado2" />


</LinearLayout>
like image 402
Guilherme Gregores Avatar asked Feb 08 '13 12:02

Guilherme Gregores


4 Answers

Write following code to do that in both views inside LinearLayout.

android:layout_width="0dp"
layout_weight="1"
like image 197
Chintan Rathod Avatar answered Nov 07 '22 11:11

Chintan Rathod


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


    <ImageView
        android:id="@+id/logo_c"
        android:layout_width="0dp" 
        android:layout_weight="50" 
        android:layout_height="wrap_content"
        android:src="@drawable/logo_animado" />

    <ImageView
        android:id="@+id/logo_t" 
        android:layout_height="wrap_content" 
        android:layout_width="0dp"    
        android:layout_weight="50" 
        android:src="@drawable/logo_animado2" />


</LinearLayout>
like image 35
M-WaJeEh Avatar answered Nov 07 '22 11:11

M-WaJeEh


Use android:weightSum and android:layout_weight

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


            <ImageView
                android:id="@+id/logo_c"
                android:layout_width="0dp" android:layout_weight="1" 
                android:layout_height="wrap_content"
                android:src="@drawable/logo_animado" />

            <ImageView
                android:id="@+id/logo_t"
                android:layout_width="0dp" android:layout_weight="1"
                android:layout_height="wrap_content"
                android:src="@drawable/logo_animado2" />


    </LinearLayout>
like image 2
Nirav Ranpara Avatar answered Nov 07 '22 10:11

Nirav Ranpara


Add android:layout_weight="1" in both the ImageView and make the width if image view as fill_parent I think it will solve your problem

But remember it will stretch your image as because image view will streach in every screen resolution so as your image.

like image 1
Abhinav Singh Maurya Avatar answered Nov 07 '22 11:11

Abhinav Singh Maurya