Android AppWidget Нет больше места при использовании размерного ресурса - PullRequest
3 голосов
/ 18 декабря 2011

Я создал XML-файл для AppWidget, как показано ниже.

XML / appwidget_4x1.xml

<?xml version="1.0" encoding="utf-8"?>
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
    android:minWidth="@dimen/AppWidget_4Cell"
    android:minHeight="@dimen/AppWidget_1Cell"
    android:updatePeriodMillis="0"
    android:previewImage="@drawable/appwidget_4x1_preview"
    android:initialLayout="@layout/appwidget_4x1_loading"
    android:resizeMode="horizontal"
    android:minResizeWidth="@dimen/AppWidget_3Cell" />

Проблема в Android 1.6. Мне явно не нравятся операторы @dimen для minWidth и minHeight. Когда это происходит, и пользователь перетаскивает AppWidget на экран, он говорит: «На домашнем экране больше нет места». Если я использую размеры явно, он снова начинает работать.

res / values ​​/ dimensions.xml (1.6 - 3.2)

<dimen name="AppWidget_1Cell">72dp</dimen>
<dimen name="AppWidget_4Cell">294dp</dimen>

res / values-v14 / dimensions.xml (4.0 +)

<dimen name="AppWidget_1Cell">40dp</dimen>
<dimen name="AppWidget_4Cell">250dp</dimen>

Это ошибка, и если да, то как это можно обойти? Я сделал это таким образом, чтобы следовать рекомендациям для новых размеров макета виджета Ice Cream Sandwich.

1 Ответ

3 голосов
/ 25 декабря 2011

Я только что попробовал, и это происходит также со мной с Android 1.6.Быстрое решение заключается в создании различных папок xml (одна для Android 1.6 и одна для других версий).Таким образом, вы могли бы иметь:

xml-v4 (для Android 1.6), содержащий измерения в виде числовых значений xml-v5 (для остальных), содержащий измерения в виде @dimen /..

или, вы можете иметь:

xml (дляAndroid 1.6 - 3.2), содержащий размеры в виде числовых значений xml-v14 (для Android 4), содержащий новые измерения

Плохо то, что вам приходится дублировать XML-файлы провайдеров приложений, но, по крайней мере, это работает.

Ммм .. Я думаю об отказе от поддержки Android 1.6 ..... (сейчас это на 1,3% ...).

Приветствия, Yuvi

http://www.droidahead.com

...