2012-08-17 4 views
0

내가 여러 자습서를 fallowing 위젯을 만든하지만 약간의 문제가 전체 셀을 채우기 위해 위젯을 얻는 데에 전체 셀을 기입하지 않습니다.위젯은 태블릿

내 삼성 Galaxy S와 같은 작은 화면에 위젯을로드하면 전체 셀 공간을 채우지 만 타블렛에서는 전체 셀을 채우지 못하게하는 위젯 레이아웃 주위에 큰 여백 또는 패딩이있는 것처럼 보입니다. 하지만 다운로드 한 다른 위젯 중 많은 부분이 내 타블렛에서 전체 2x2 셀 영역을 채 웁니다. 여기

내가 위젯 크기로 사용하고 코드입니다.

<?xml version="1.0" encoding="utf-8"?> 
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android" 
    android:initialLayout="@layout/widget" 
    android:minHeight="146dp" 
    android:minResizeHeight="146dp" 
    android:minResizeWidth="146dp" 
    android:minWidth="146dp" 
    android:resizeMode="horizontal|vertical" 
    android:updatePeriodMillis="10000" > 

</appwidget-provider> 

그리고 위젯 레이아웃 자체에 대한 코드 :

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" android:layout_height="match_parent" 
    android:id="@+id/layout" android:background="@drawable/yellow"> 

    <TextView android:id="@+id/TextView01" android:layout_width="match_parent" 
     android:layout_height="match_parent" style="@android:style/TextAppearance.Medium" 
     android:layout_gravity="center" android:textColor="#000000"></TextView> 

</LinearLayout> 

가 나는 또한 매니페스트에이 추가 시도했지만 나는 것을 잃었 어떤 문제

<supports-screens 
    android:smallScreens="true" 
    android:normalScreens="true" 
    android:largeScreens="true" 
    android:xlargeScreens="true" 
    android:anyDensity="true" /> 

가 해결되지 않았다 내 위젯이 태블릿의 전체 셀 영역을 채우지 못하게합니까?

Screenshot of Widget Comparison

+0

-14의 targetSdk 아래 아무것도하지만 작동 및 위젯을 자동 패딩은 안드로이드 4.0까지 구현되지 않은 이후 전체 셀 영역을 사용할 수 있습니까? 4.0 이상을 실행하는 기기에 대해서는 특별한 고려 사항이 필요합니다. – Eric

+0

예. 내 은하 S는 안드로이드 2.2이지만 타블렛은 4.0입니다. 내가 고려해야 할 특별한 고려 사항은 무엇입니까? – Gatekeeper

+0

문제 간단히 [여기]에 설명되어있다 (http://developer.android.com/guide/practices/ui_guidelines/widget_design.html#anatomy). 용액을 찾아 낼 수있다 [여기서 (http://developer.android.com/guide/topics/appwidgets/index.html#CreatingLayout). 이 방법으로 문제가 해결되면 답변 형식으로 게시 해 드리겠습니다. – Eric

답변

1

솔루션 발견! 목록에

<uses-sdk android:targetSdkVersion="8" /> 

을 추가하기 만하면됩니다. API 장치의 운영 체제는 무엇입니까 (14)