2014-02-11 5 views
5

У меня есть 3 кнопки в нижней части приложения im im, и im просто пытается использовать некоторые значки android для Android вместо комбинации или комбинации обоих. Есть команды andoid:drawableStart/top/bottom/etc, но я просто хотел бы, чтобы эти значки появлялись с помощью smack dab в середине. Кажется, для этого нет простого решения? Вот то, что я работаю с:только значки центра (не текст) горизонтально и вертикально на кнопке

<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="@drawable/calm" 
    android:paddingBottom="@dimen/activity_vertical_margin" 
    android:paddingLeft="@dimen/activity_horizontal_margin" 
    android:paddingRight="@dimen/activity_horizontal_margin" 
    android:paddingTop="@dimen/activity_vertical_margin" 
    tools:context=".PiktuurMain" > 

    <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_alignParentBottom="true" 
     android:layout_centerHorizontal="true" > 

     <Button 
      android:id="@+id/takepic" 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:background="@drawable/round" /> 

     <Button 
      android:id="@+id/editpic" 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_marginLeft="15dp" 
      android:layout_marginRight="15dp" 
      android:layout_weight="1" 
      android:background="@drawable/round" /> 

     <Button 
      android:id="@+id/sharepic" 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:background="@drawable/round" 
      android:drawableStart="@android:drawable/ic_dialog_email" /> 
    </LinearLayout> 
</RelativeLayout> 
+0

загрузить один оснастке –

+0

Используйте 'CTRL + SHIFT + f' в' XML' для форматирования;) –

ответ

10

Используйте ImageButton:

<ImageButton 
     android:id="@+id/sharepic" 
     android:layout_width="0dp" 
     android:layout_weight="1" 
     android:layout_height="wrap_content" 
     android:background="@drawable/round" 
     android:src="@android:drawable/ic_dialog_email" 
     /> 
+0

спасибо, что я увидел 'imagebutton', но не был уверен, как это работает. Убито 2 птицы одним камнем. Спасибо, сэр! – erp

0

Вы можете использоваться ImageButton вместо Button. Ниже я покажу вам колонтитула раскладку

<LinearLayout 
     android:id="@+id/footer" 
     android:layout_width="fill_parent" 
     android:layout_height="56dp" 
     android:layout_alignParentBottom="true" 
     android:layout_centerHorizontal="true" 
     android:layout_marginBottom="0dp" 
     android:background="@drawable/trans_bg" 
     android:gravity="center" 
     android:padding="5dp" > 

     <LinearLayout 
      android:id="@+id/ib_add_ed_lay" 
      style="@style/Bottombar2LinearLayout" > 

      <ImageButton 
       android:id="@+id/ib_add" 
       android:layout_width="30dp" 
       android:layout_height="30dp" 
       android:background="@drawable/add_event_button_back" /> 
     </LinearLayout> 

     <LinearLayout 
      android:id="@+id/ib_map_ed_lay" 
      style="@style/Bottombar2LinearLayout" > 

      <ImageButton 
       android:id="@+id/ib_map" 
       android:layout_width="30dp" 
       android:layout_height="30dp" 
       android:background="@drawable/map_button_back" /> 
     </LinearLayout> 

     <LinearLayout 
      android:id="@+id/ib_call_cd_lay" 
      style="@style/Bottombar2LinearLayout" > 

      <ImageButton 
       android:id="@+id/ib_get_route" 
       android:layout_width="30dp" 
       android:layout_height="30dp" 
       android:background="@drawable/route_button_back" /> 
     </LinearLayout> 
    </LinearLayout> 

Добавить style в values\styles.xml

<style name="Bottombar2LinearLayout"> 
    <item name="android:layout_width">30dp</item> 
    <item name="android:layout_height">30dp</item> 
    <item name="android:layout_marginLeft">40dp</item> 
    <item name="android:layout_marginRight">40dp</item> 
    <item name="android:layout_marginBottom">1dp</item> 
    <item name="android:layout_marginTop">1dp</item> 
</style> 

Выход:enter image description here

Смежные вопросы