Линейная компоновка слишком велика для размера виджета - PullRequest
0 голосов
/ 03 февраля 2011

Я пытаюсь сделать виджет 4x1.Я установил провайдера следующим образом

<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
android:minWidth="294dp"
android:minHeight="72dp"
android:updatePeriodMillis="0"
android:initialLayout="@layout/widgetlayout"></appwidget-provider>

, а расположение виджетов выглядит следующим образом

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="320dp" 
android:layout_height="100dp"
android:background="@drawable/widgetframe">
<Button android:id="@+id/butscan"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Click Me" />
<Button android:id="@+id/butenable"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="On/Off"
        android:paddingRight="5dip"/>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:paddingLeft="4dip"
    android:includeFontPadding="false"
    android:id="@+id/lblcurrent"
    android:text="Test"/></LinearLayout>

Теперь, когда я пытаюсь сделать это на эмуляторе, я получаю только середину слоя, показанногодомашний экран.Фоновое изображение - это изображение 4x1 из SDK (320x100).

Чего мне не хватает?

Ответы [ 2 ]

0 голосов
/ 08 марта 2012

Ваш TextView принимает макет из-за fill_parent.

Вам, вероятно, следует добавить layout_weight=1 к нему, чтобы оно масштабировалось только до доступного пространства.

0 голосов
/ 07 февраля 2011

Ширина и высота макета для LinearLayout, вероятно, должна быть fill_parent.

У ваших кнопок нет ресурсов для графики, но я предполагаю, что вы назначаете в коде что-то вроде рисованных объектов или растровых изображений, иначе они могут нешоу.Я никогда не создавал кнопку без изображения, поэтому я не знаю, как она будет работать.

Я удивлен, что ваш текст "Тест" не отображается, но он может отображаться за пределами размера вашего виджетатак как ваш фон больше, чем сам виджет.Опять же, попробуйте fill_parent вместо 320dp и 100dp (кстати, я никогда не использовал «dp», только «sp»).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...