将带有动态TextView的LinearLayout添加到RemoteView for widget

时间:2014-04-28 09:54:42

标签: android android-layout android-linearlayout appwidgetprovider android-remoteview

我已经尝试过将一些带有动态文本视图(运行时)的linearlayout(xml定义)添加到RemoteView。

我在xml布局中定义了linearlayout,如:

calendarlayout.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/layoutClickable"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/myshape"
android:padding="4dp" >

<LinearLayout
    android:id="@+id/layoutParentView"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_centerVertical="true"
    android:layout_marginLeft="70dp"
    android:orientation="vertical"
    android:padding="4dp" >

</LinearLayout>

尝试在我的remoteview中使用一些动态文本视图。

RemoteViews remoteViews = new RemoteViews(context
            .getApplicationContext().getPackageName(), R.layout.calendarlayout);
for(int i=0; i<event_row_counter; i++ ){
CalendarEvent mCalendarEvent = new CalendarEvent();
mCalendarEvent = CALENDAR_EVENTS.get(i);    
TextView mTextView = new TextView(context);
mTextView.setId(i);

RemoteViews textRemoteView = new 
RemoteViews(context.getApplicationContext().getPackageName(), R.layout.calendarlayout);
remoteViews.setTextViewText(mTextView.getId(), mCalendarEvent.getFormatedTime()+" "+mCalendarEvent.getTitle());
remoteViews.addView(R.layout.calendarlayout, textRemoteView);          
}

我知道我的过程完全错误,但我找不到任何方法将带有动态textview的linearlayout添加到remoteview中。

建议大多受到赞赏。

0 个答案:

没有答案