How to make 4x1 size widget on Android homescreen?

感情迁移 提交于 2019-11-27 20:59:20

问题


I have difficulties developing 4x1 widget for Android.

This is the appprovider

<?xml version="1.0" encoding="utf-8"?> <appwidget-provider
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:minWidth="294dp"
    android:minHeight="72dp"
    android:initialLayout="@layout/main" />

And here is the main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="320dp"
    android:layout_height="100dp"
    android:gravity="center_vertical|center_horizontal"
    android:orientation="horizontal"> 
//content goes here
</LinearLayout>

I could see the widget but the size is 4x2. I confuse why I cannot have 4x1 widget size?

Thanks


回答1:


I don't think it's a newbie mistake.. I've had an appWidget that was 1x1 cell in size. I set it to 72dp x 72dp, and it was working fine.. But it seems like Google changed the widget dimension sizing formula from

(cells * 74) - 2

to

(cells * 70) - 30

So now the default size of my widget has to be 40dp x 40dp..

Source: http://developer.android.com/guide/practices/ui_guidelines/widget_design.html#anatomy_determining_size




回答2:


In ICS it must be showing 4x2.

To correct this make a folder in 'res' name 'xml-v14':

Define your widget appwidget-provider with same xml name here. just change minHeight to 40dp. This will correct the error.

Hope this help you.



来源:https://stackoverflow.com/questions/8101955/how-to-make-4x1-size-widget-on-android-homescreen

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!