2012-11-28 94 views
3

我在查找Android 4.2中引入的鎖屏小工具引用時遇到了很多問題。鎖屏小工具太小

我創建了一個在發射器上正常工作的小部件,它的大小與我的預期相當。不過,我已將這個小部件放置在鎖屏上,並且它的大小不能垂直。

根據http://developer.android.com/guide/topics/appwidgets/index.html#lockscreen它會佔用可用大小垂直如果設置android:resizeMode="vertical"

如果物件本身標記爲垂直可調整大小,然後將小部件 高度顯示爲「小」縱向手機上顯示解鎖UI。 在所有其他情況下,小部件大小將填充可用高度。

另外我曾經在http://developer.android.com/guide/practices/ui_guidelines/widget_design.html

瓷磚描述的上漿>尺寸

  • 1> 40dp
  • 2> 110dp
  • 3> 180dp
  • 4> 250dp
  • ...> ...
  • N> 70×N - 30

我已經設置此,在似乎比 「小」 部件更小。基本上,沒有人知道它在圖片1它不會擴展的部件有什麼問題嗎?我的代碼如下。

1)它的默認狀態是什麼樣子。

enter image description here

2)它看起來什麼當另一畫面上展開等。

enter image description here

XML/clock_widget.xml

<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android" 
    android:initialKeyguardLayout="@layout/clock_widget" 
    android:initialLayout="@layout/clock_widget" 
    android:minHeight="110dp" 
    android:minWidth="180dp" 
    android:resizeMode="vertical" 
    android:updatePeriodMillis="1000" 
    android:widgetCategory="keyguard|home_screen" > 

</appwidget-provider> 

佈局/ clock_widget.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/clock_widget" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical"> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal"> 

     <TextView 
      android:id="@+id/widget_hour" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="" 
      android:textAppearance="?android:attr/textAppearanceLarge" 
      android:textSize="36sp" /> 

     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text=":" 
      android:textAppearance="?android:attr/textAppearanceLarge" 
      android:textSize="36sp" /> 

     <TextView 
      android:id="@+id/widget_minute" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="" 
      android:textAppearance="?android:attr/textAppearanceLarge" 
      android:textSize="36sp" /> 

    </LinearLayout> 

    <TextView 
     android:id="@+id/widget_date" 
     android:layout_width="wrap_content" 
     android:layout_height="match_parent" 
     android:text="" 
     android:textAppearance="?android:attr/textAppearanceMedium" /> 
</LinearLayout> 
+0

您是否嘗試將minHeight添加到根LinearLayout? –

回答

1

看起來這只是在模擬器中發生。在真實的硬件上測試很好。

+0

好吧,我已經在使用我的小部件的Genymotion虛擬設備中看到過這個問題,並且詢問了一個智能手機的用戶,並且問題依然存在。你在說什麼「真正的硬件」時,你在說什麼? –

+0

它在Galaxy Nexus,Nexus 4和Nexus 7下正常工作。它無法在Galaxy Nexus的配置模擬器上工作。 – Kirk

+0

奇怪...所有這些設備都附帶了股票啓動器。你是否說你的小部件看起來像圖像2中的那個一直?AFAIK肖像手機上的初始顯示很小,並且一旦向下滑動鎖定,它就會展開 –