因此,我閱讀了窗口小部件的大小,並創建了一個250dpX72dp窗口小部件,期望它佔用一行4列。在我的2.2設備上的確如預期的那樣顯示,但是在我的4.2設備上它突然佔用了4x2。爲什麼我的主屏幕小部件需要兩行而不是一行?
我想計算每個細胞的大小爲(細胞* 74) - 2.
小部件定義如下:
<?xml version="1.0" encoding="utf-8"?>
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
android:initialLayout="@layout/widget"
android:minHeight="72dp"
android:minWidth="250dp"
/>
這在某種程度上改變了Android版本? http://www.vogella.com/articles/AndroidWidgets/article.html#overview_size Widget會在主屏幕上顯示一定數量的單元格。單元通常用於顯示一個應用程序的圖標。作爲計算規則,您應該使用以下公式定義小部件的大小:((列數/行數)* 74) - 2.這些是與設備無關的像素,-2用於避免舍入問題。 此外,我的舊Android設備確實顯示在一行中。 – 2013-03-22 21:53:15
我的猜測是,使用Honeycomb和ICS +可以調整主屏幕小部件Google進行更改。如果您的目標是SDK 14,則通過我的鏈接,他們自己添加少量的保證金。 – 2013-03-22 22:08:40
@ user1993392 Vogella的文章已過時。自ICS以來的新公式(70 * n) - 30 – 2013-08-05 13:37:59