2013-12-13 4 views
1

Я знаю, что это может быть банальный вопрос, но я просто не мог заставить его работать:Android Layout - Центрирование значок в Linear Layout

Часть кода вида деятельности:

<LinearLayout 
      android:id="@+id/send_layout" 
      android:layout_width="120dp" 
      android:layout_height="40dp" 
      android:orientation="horizontal" 
      android:layout_marginTop="5dp" 
      android:background="@drawable/rounded" 
      android:clickable = "true" 
      android:weightSum="1" > 

      <ImageView 
       android:id="@+id/send_icon" 
       android:layout_height="fill_parent" 
       android:layout_width="wrap_content" 
       android:scaleType="centerCrop"  
       android:src="@drawable/ic_action_send_now" 
       android:gravity="center_horizontal" 
       android:padding="5dip"/> 
     </LinearLayout> 

и это округлая форма под вытяжкой папки:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 

<item> 
<shape xmlns:android="http://schemas.android.com/apk/res/android" 
android:padding="5dp" 
android:shape="rectangle" > 

<corners android:radius="5dp"/> 

<solid android:color="#ccc" /> 

</shape> 

</item> 

<item android:bottom="0.5dp"> 
<shape xmlns:android="http://schemas.android.com/apk/res/android" 
    android:padding="5dp" 
    android:shape="rectangle" > 

    <solid android:color="#FFFFFF" /> 

    <!-- <stroke 
     android:width="1dp" 
     android:color="#2f6699" /> --> 

    <corners 
     android:bottomLeftRadius="5dp" 
     android:bottomRightRadius="5dp" 
     android:topLeftRadius="5dp" 
     android:topRightRadius="5dp" /> 

</shape> 
</item> 

</layer-list> 

Независимо от того, как я играю с тяжестью изображения в LinearLayout, она все еще находится на левой стороне. Может кто-нибудь, пожалуйста, взгляните и дайте мне знать, как я могу сосредоточить изображение?

+0

Просто мое любопытство, почему бы не использовать «RelativeLayout»? – Fllo

+0

использование android: gravity = "center" – LomE999

ответ

0

На самом деле я не уверен, но Попробуйте это:

<LinearLayout 
     android:id="@+id/send_layout" 
     android:layout_width="120dp" 
     android:layout_height="40dp" 
     android:orientation="horizontal" 
     android:layout_marginTop="5dp" 
     android:background="@drawable/rounded" 
     android:gravity="center_horizontal" 
     android:clickable = "true" 
     android:weightSum="1" > 

     <ImageView 
      android:id="@+id/send_icon" 
      android:layout_height="fill_parent" 
      android:layout_width="wrap_content" 
      android:scaleType="centerCrop"  
      android:src="@drawable/ic_action_send_now" 
      android:padding="5dip"/> 
    </LinearLayout> 

, если это не сработает, то попробуйте:

<LinearLayout 
     android:id="@+id/send_layout" 
     android:layout_width="120dp" 
     android:layout_height="40dp" 
     android:orientation="horizontal" 
     android:layout_marginTop="5dp" 
     android:background="@drawable/rounded" 
     android:clickable = "true" 
     android:weightSum="1" > 

     <ImageView 
      android:id="@+id/send_icon" 
      android:layout_height="fill_parent" 
      android:layout_width="wrap_content" 
      android:scaleType="centerCrop"  
      android:src="@drawable/ic_action_send_now" 
      android:layout_gravity="center_horizontal" 
      android:padding="5dip"/> 
    </LinearLayout> 

Пусть это поможет вам. Если он не комментирует.

0

попробовать это

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/send_layout" 
android:layout_width="120dp" 
android:layout_height="40dp" 
android:layout_marginTop="5dp" 
android:background="@drawable/borderr" 
android:clickable="true" 
android:gravity="center_horizontal" 
android:orientation="horizontal" 
android:weightSum="1" > 

<ImageView 
    android:id="@+id/send_icon" 
    android:layout_width="wrap_content" 
    android:layout_height="fill_parent" 
    android:padding="5dip" 
    android:scaleType="centerCrop" 
    android:src="@drawable/ic_launcher" /> 

0

Попробуйте

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/send_layout" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_centerHorizontal="true" 
    android:layout_centerVertical="true" 
    android:orientation="vertical" > 
0

Это потому, что вы используете android:scaleType="centerCrop", а также android:layout_height="fill_parent"android:layout_width="wrap_content" для

imageView 

Попробуйте следующие данные:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/send_layout" 
    android:layout_width="120dp" 
    android:layout_height="40dp" 
    android:layout_marginTop="5dp" 
    android:background="@drawable/ic_launcher" 
    android:clickable="true" 
    android:orientation="horizontal" 
    android:weightSum="1" > 

    <ImageView 
     android:id="@+id/send_icon" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center" 
     android:padding="5dip" 
     android:src="@drawable/ic_launcher" /> 

</LinearLayout> 
3

Изменить Гравитация вашей линейной компоновки в центр вместо изображения. он будет работать

<LinearLayout 
      android:id="@+id/send_layout" 
      android:layout_width="120dp" 
      android:layout_height="40dp" 
      android:orientation="horizontal" 
      android:layout_marginTop="5dp" 
      android:layout_centerInParent="true" 
      android:gravity="center" 
      android:background="@drawable/rounded" 
      android:clickable = "true" > 

      <ImageView 
       android:id="@+id/send_icon" 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:padding="5dp" 
       android:scaleType="centerCrop" 
       android:src="@drawable/ic_launcher" 
       android:contentDescription="@string/hello_world"/> 

Проверьте снимок экрана

enter image description here

0

это, как я центрировать вид текста .. надеюсь, что вы бы помочь ему

rounded_corners.xml

<?xml version="1.0" encoding="utf-8"?> 
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 

<!-- Bottom 2dp Shadow --> 
<item> 
<shape android:shape="rectangle"> 

<solid android:color="#f47621" /> 
<corners android:radius="7dp" /> 

</shape> 
</item> 

<!-- White Top color --> 
<item android:bottom="3px"> 

<shape android:shape="rectangle"> 

<solid android:color="#FFFFFF" /> 
<corners android:radius="7dp" /> 


</shape> 

</item> 

</layer-list> 

и в основной деятельности

<RelativeLayout 
    android:id="@+id/panel" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentRight="true" 
    android:alpha="0"     
    android:gravity="center_horizontal" 
    android:orientation="vertical" 
    android:background="#f47621" > 

     <TextView 
      android:id="@+id/lbl" 
      android:layout_width="50dp" 
      android:layout_height="50dp" 
      android:alpha="0" 
      android:text="A" 
      android:textAppearance="?android:attr/textAppearanceLarge" 
      android:textSize="32sp" 
      android:translationX="0dp" 
      android:background="@drawable/rounded_corners" 
      android:gravity="center" /> 

</RelativeLayout> 
Смежные вопросы