不同手机中的Android小部件

时间:2012-02-08 11:09:26

标签: android android-widget

我创建了一个小部件。它显示了WiFi的详细信息,如网络名称,IP和MAC地址。 但我无法为我在小部件中使用的文本提供固定大小。如果屏幕改变文本大小也需要调整。我们怎么做到这一点?

我的xml文件如下所示。

<?xml version="1.0" encoding="utf-8"?>

 <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="@dimen/widget_margin" >

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

    <ImageView
        android:id="@+id/wifi_background"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
</LinearLayout>

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingLeft="@dimen/padding_left"
    android:paddingTop="22dp"
    android:orientation="vertical"
    >
<FrameLayout android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    >

    <TextView
    android:id="@+id/wifi_status"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textSize="12dp"
    />

<TextView
    android:id="@+id/wifi_on"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textColor="@android:color/white"
    android:textSize="12dp"
     />

</FrameLayout>

<TextView
    android:id="@+id/wifi_notconnected"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textColor="@android:color/white"
    android:textSize="7dp"
     />
</LinearLayout>

<ImageView
    android:id="@+id/wifi_signal_strength"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" />

<ImageView
    android:id="@+id/wifi_circle"
    android:layout_width="@dimen/circle_width"
    android:layout_height="@dimen/circle_hieght"
    android:layout_marginLeft="2dp"
    android:layout_gravity="center_vertical"
    android:background="@drawable/onpress_wifi_icon_circle_null"
    android:src="@drawable/toggle" />

<ImageView
    android:id="@+id/wifi_square"
    android:layout_width="@dimen/square_width"
    android:layout_height="@dimen/square_hieght"
    android:layout_marginTop="8dp"
    android:layout_gravity="right|top"
    android:background="@drawable/onpress_network_info_squre_null"
    android:src="@drawable/togglenetwork" />

 </FrameLayout>

1 个答案:

答案 0 :(得分:1)

您应该sp使用TextSize

<TextView
   android:id="@+id/wifi_status"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:textSize="12sp"
/>

Read more.