2012-04-24 2 views
0

У меня есть макет для главного экрана в приложении, в котором я хотел бы иметь стиль evernote. До сих пор мой код это:Android: макет стиля Evernote

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="wrap_content" 
    android:layout_height="fill_parent" 
    android:gravity="center_vertical|center_horizontal" 
    android:orientation="vertical" > 

    <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_gravity="bottom|left" 
     android:orientation="horizontal" > 

     <ImageButton 
      android:id="@+id/btn1" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:src="@drawable/button" /> 

     <ImageButton 
      android:id="@+id/btn2" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:src="@drawable/button" /> 
    </LinearLayout> 

    <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_gravity="bottom|center" 
     android:orientation="horizontal" > 

     <ImageButton 
      android:id="@+id/btn3" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:src="@drawable/button" /> 

     <ImageButton 
      android:id="@+id/btn4" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:src="@drawable/button" /> 
    </LinearLayout> 

</LinearLayout> 

Вот как это выглядит:

enter image description here

И это, как я хотел бы, чтобы выглядеть следующим образом:

enter image description here

Как я мог достичь этого? Группировка таких кнопок?

Большое спасибо!

+1

Что вы, вероятно, ищете это шаблон приборной панели. Посмотрите на этот вопрос: http://stackoverflow.com/questions/2873568/android-dashboard-pattern - второй ответ –

+0

http://stackoverflow.com/questions/8212035/android-gridlayout-and-space-backport – Siyamed

ответ

1

Вы можете адаптировать его к этому, это из приложения Google I/O.

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:orientation="vertical" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:background="#ffffff"> 
<LinearLayout android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_weight="1" 
    android:padding="6dip"> 
    <LinearLayout android:orientation="horizontal" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1"> 
     <Button android:id="@+id/button" 
      android:text="@string/button" 
      android:drawableTop="@drawable/button" /> 
     <Button android:id="@+id/button" 
      android:text="@string/button" 
      android:drawableTop="@drawable/button" /> 
    </LinearLayout> 

    <LinearLayout android:orientation="horizontal" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1"> 
     <Button android:id="@+id/button" 
      android:text="@string/button" 
      android:drawableTop="@drawable/button" /> 
     <Button android:id="@+id/button" 
      android:text="@string/button" 
      android:drawableTop="@drawable/button" /> 

    </LinearLayout> 

    <LinearLayout android:orientation="horizontal" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1"> 
     <Button android:id="@+id/button" 
      android:text="@string/button" 
      android:drawableTop="@drawable/button" /> 
     <Button android:id="@+id/button" 
      android:text="@string/button" 
      android:drawableTop="@drawable/button" /> 
    </LinearLayout> 
</LinearLayout> 

+0

Кнопки не расширяются, то есть они не расширяются. Поэтому я рекомендую использовать ImageView с TextView. –

+0

Другая проблема заключается в том, что текстовое представление НЕ масштабируется, но это не большая сделка, как изображения. –

+0

@kilaka Это был просто пример позиционирования. В моем случае я использовал кнопки, он мог поставить все, что захочет. В моем приложении это работает отлично, у меня что-то похожее на «Evernote». –

1

Вам просто нужно установить ширину кнопок изображения на 0dp и дать им layout_weight из 1. Кроме того, установите layout_gravity в center_horizontal.

Это сделает их центра красиво.

С наилучшими пожеланиями, Tim

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