2012-02-15 3 views
1

Я хочу добавить текстовые изображения в мой виджет во время выполнения. Я видел много учебников, в которых объект RemoteViews вызывает метод addView, чтобы добавить представление к некоторому макету.Виджеты Android: addView не работает с объектом RemoteViews

RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.main); 
TextView t = new TextView(context); 
views.addView(R.id.view_container, t); 
appWidgetManager.updateAppWidget(thisWidget, views); 

Но метод addView показывает эту ошибку: Метод addView (INT, RemoteViews) не определено для типа RemoteViews.True, этот метод определен в классе ViewGroup, но почему это работает для всех тогда? И есть ли способ добавить текстовые просмотры в некоторые RemoteViews во время выполнения?

ответ

1

Не подпись RemoteViews.addView(int, RemoteViews)?

В качестве второго параметра у вас есть TextView.

Что-то, как это должно работать:

RemoteViews remoteViewToAdd = new RemoteViews(context.getPackageName(), LAYOUT_ID); 
... 
views.addView(R.id.view_container, remoteViewToAdd); 
+0

Спасибо, я исправил параметры и стил получить ту же ошибку: Метод addView (INT, RemoteViews) не определено для RemoteViews типа. Поскольку addView определен только для ViewGroup, а RemoteViews не является потомком, возможно, мне нужно каким-то образом отбросить RemoteViews в ViewGroup. Но почему это работает для всех остальных без этого? – kkgery

+0

'RemoteViews.addView (int, RemoteViews)' был добавлен в API уровня 7. Я предполагаю, что вы используете этот уровень или выше? –

+0

Исправлено. Я нацелился на 1.6. Спасибо! – kkgery

 Смежные вопросы

  • Нет связанных вопросов^_^