Skip to main content

Linearlayout gravity issue?



İ have problem about linear layout. i think something is weard.All of them same layout but back button moving related icon buton.I want to fit back button on the left side and btn_header_what_search_user button want to right site.But they are moving related icon(center icon).Why? and how can i back button on the left side.





enter image description here





my code:`







<LinearLayout android:layout_height="44dip"

android:layout_width="320dip"

android:background="@drawable/header_320_44dip">

<ImageView

android:layout_width="121dip"

android:layout_height="32dip"

android:layout_gravity="center"

android:layout_marginLeft="90dip"

android:background="@drawable/icon">



</ImageView>



<ImageView

android:layout_width="52dip"

android:layout_height="32dip"

android:layout_gravity="left"

android:background="@drawable/btn_back_52x32">



</ImageView>





<ImageButton

android:layout_height="34dip"

android:layout_width="64dip"

android:id="@+id/btn_header_what_search_user"

android:layout_marginLeft="0dip"

android:background="@drawable/btn_nedit_nontext_64x34">

</ImageButton>

</LinearLayout>







`


Comments

  1. The LinearLayout does not work well with gravities along it's main direction (that is, a horizontal LinearLayout does not support left,right or center_horizontal, and a vertical top,bottom or center_vertical).
    You could instead try a RelativeLayout and using the layout_alignParentLeft/layout_alignParentRight attributes (or any of the other available ones) to get the correct result.

    ReplyDelete
  2. You should use Relative layout

    <RelativeLayout android:layout_height="44dip"
    android:layout_width="320dip"
    android:background="@drawable/header_320_44dip">
    <ImageView
    android:layout_width="121dip"
    android:layout_height="32dip"
    android:layout_centerInParent="true"
    android:layout_marginLeft="90dip"
    android:background="@drawable/icon">

    </ImageView>

    <ImageView
    android:layout_width="52dip"
    android:layout_height="32dip"
    android:layout_alignParentLeft="true"
    android:background="@drawable/btn_back_52x32">

    </ImageView>


    <ImageButton
    android:layout_height="34dip"
    android:layout_width="64dip"
    android:id="@+id/btn_header_what_search_user"
    android:layout_marginLeft="0dip"
    android:layout_alignParentright="true"
    android:background="@drawable/btn_nedit_nontext_64x34">
    </ImageButton>
    </RelativeLayout>

    ReplyDelete
  3. Another solution might be the use of layout weights. Set a total weight of 3 and then set a weight of 1 for each of the image views. This way the layout is split up in 3 parts and you should be able to adjust the gravity for each part. Something like that:

    <LinearLayout
    ...
    android:weightSum="3" >

    <ImageView
    ...
    android:layout_width="0dp"
    android:layout_weight="1" />

    ReplyDelete

Post a Comment

Popular posts from this blog

Why is this Javascript much *slower* than its jQuery equivalent?

I have a HTML list of about 500 items and a "filter" box above it. I started by using jQuery to filter the list when I typed a letter (timing code added later): $('#filter').keyup( function() { var jqStart = (new Date).getTime(); var search = $(this).val().toLowerCase(); var $list = $('ul.ablist > li'); $list.each( function() { if ( $(this).text().toLowerCase().indexOf(search) === -1 ) $(this).hide(); else $(this).show(); } ); console.log('Time: ' + ((new Date).getTime() - jqStart)); } ); However, there was a couple of seconds delay after typing each letter (particularly the first letter). So I thought it may be slightly quicker if I used plain Javascript (I read recently that jQuery's each function is particularly slow). Here's my JS equivalent: document.getElementById('filter').addEventListener( 'keyup', function () { var jsStart = (new Date).getTime()...

Is it possible to have IF statement in an Echo statement in PHP

Thanks in advance. I did look at the other questions/answers that were similar and didn't find exactly what I was looking for. I'm trying to do this, am I on the right path? echo " <div id='tabs-".$match."'> <textarea id='".$match."' name='".$match."'>". if ($COLUMN_NAME === $match) { echo $FIELD_WITH_COLUMN_NAME; } else { } ."</textarea> <script type='text/javascript'> CKEDITOR.replace( '".$match."' ); </script> </div>"; I am getting the following error message in the browser: Parse error: syntax error, unexpected T_IF Please let me know if this is the right way to go about nesting an IF statement inside an echo. Thank you.