向窗口小部件添加多个视图

时间:2012-02-24 15:51:30

标签: android android-widget

是否可以向窗口小部件添加多个视图?

我想做一个有几个文本视图的Widget,但是在更新完成之前我不知道有多少,所以我不能把它全部放在同一个xml布局中。因为我不想使用listView,因为我不想升级到API级别3我正在尝试这个!

我发布了我的代码,虽然我认为没用!

    @Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager,
        int[] appWidgetIds) {
    thisWidget = new ComponentName(context, Widget.class);
    DataBaseAccess ddbb = new DataBaseAccess();
    String query = "SELECT * FROM object where app = 'jhgf' and type = 1";
    String resp = ddbb.execute(query, "name-prevnivMax-prevNivAlarm");
    String[] response = resp.split("&-");
    RemoteViews[] lv = new RemoteViews[response.length];
    RemoteViews ll = new RemoteViews(context.getPackageName(), R.layout.widget);
    for (int i = 0; i < response.length; i++) {
        lv[i] = new RemoteViews(context.getPackageName(), R.layout.widgetlistitem);
        //Some downloads from data base
        lv[i].setTextViewText(R.id.text2,response[i].split("&")[0]);
        ll.addView(R.id.wid, lv[i]);
    }
    appWidgetManager.updateAppWidget(thisWidget, ll);

}

ll应该是父布局,而且应该是孩子们。

谢谢!

注意:代码显示我添加到ll remoteview的第一个视图。不是下一个!

小部件布局是:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal"
android:id="@+id/wid">

我要添加为视图的布局是:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal" >

<TextView
    android:id="@+id/text2"
    android:layout_width="wrap_content"
    android:layout_height="20dp"
    android:layout_gravity="left"
    android:layout_marginLeft="2dp"
    android:gravity="center|left"
    android:textStyle="bold"
    android:typeface="sans" >
</TextView>

0 个答案:

没有答案