2011-03-07 5 views
2

나는 android에서 몇 가지 appwidget을 만들고 있습니다. 나는 또한 appwidgets의 레이아웃을 사용하지 않기 때문에 내 활동에서 컨트롤을 만들 수있어 동일하게 보입니다.Android AppWidget 크기

그래서 문제가있는 것은 내가 가지고있는 문제는 크기가 같기를 바랍니다. 당신이 appwidget 크기가 exacly 컨트롤 크기와 같은 크기되지 않습니다 볼 수 있듯이 여기

Activity Image

Appwidget Image

는 위젯 XML

<?xml version="1.0" encoding="utf-8"?> 
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android" 
    android:minHeight="72dp" android:initialLayout="@layout/sitewidget" 
    android:minWidth="146dp" android:updatePeriodMillis="60000" 
    android:configure="com.leaflabs.jaws_editor.SiteWidgetConfigure"> 
</appwidget-provider> 

입니다.

질문은 어떻게 되나요? 나는 그것을 같은 크기지만을 얻기 위해 다음과 같은 컨트롤의 ctor에 지정된 올바른하지

Resources r = context.getResources(); 

float width = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 
       146, r.getDisplayMetrics()); 

float height = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 
       72, r.getDisplayMetrics()); 

setLayoutParams(new LinearLayout.LayoutParams((int) width, (int) height)); 

답변

0

FrameLayout이 (그냥 예)에 appwidget의 루트 레이아웃을 설정하고 장소 당신의 컨트롤을있는 LinearLayout의 아이로 그것의. 그런 다음 해당 LinearLayout에 크기를 지정하십시오.

appwidget-provider의 치수가 정확한 크기에 적용되지 않습니다.