Cómo configurar el texto en la vista de texto de un widget
Estoy intentando fijar el texto en un widget de la pantalla casera. Estoy utilizando remoteView para archivar esto, pero no muestra el texto cuando ejecuto la aplicación. El texto debe definirse en un TextView (denominado "Update")
public class MyWidgetProvider extends AppWidgetProvider { public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) { RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget_layout); views.setTextViewText(R.id.update, "Hellow"); } }
- Problema con el espacio en blanco de Android TabWidget
- Android Tabhost Problema - .setIndicator
- Drop-menu en ListView para Android
- Cómo mejorar el rendimiento de ViewFlipper / ViewAnimator
- Widget de la pantalla de inicio de Android (icono, etiqueta - estilo)
- Cómo deshabilitar copiar / pegar de / a EditText
- Android: abra una nueva actividad en los clics de listview
- Personalizar la apariencia de un <Key>
- Obtener la posición de la imagen actual en la Galería
- Después de que los botones de cambio de orientación en un widget no responden
- Cambio de diseño de widget después de cambiar el tamaño del widget
- ¿Por qué TextView en una línea elipsized con los cuadros de la demostración del "extremo"?
- sombra lista de android
Intente debajo del código.
static void updateAppWidget(Context context, AppWidgetManager appWidgetManager, int appWidgetId) { DateFormat format = SimpleDateFormat.getTimeInstance( SimpleDateFormat.MEDIUM, Locale.getDefault()); CharSequence text = format.format(new Date()); Intent intent = new Intent(context, UpdateService.class); PendingIntent pendingIntent = PendingIntent.getService(context, 0, intent, 0); RemoteViews remoteViews = new RemoteViews(context.getPackageName(), R.layout.widget); remoteViews.setOnClickPendingIntent(R.id.LinearLayout01, pendingIntent); remoteViews.setTextViewText(R.id.widget_textview, text); <---- here you can set text // Tell the widget manager appWidgetManager.updateAppWidget(appWidgetId, remoteViews);
Usted tiene que hacer un archivo xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/LinearLayout01" android:layout_height="120dp" android:layout_width="320dp" android:orientation="horizontal" > <TextView android:id="@+id/widget_textview" android:layout_width="fill_parent" android:layout_height="fill_parent" android:gravity="center_vertical|center_horizontal" android:textColor="@android:color/white" android:text="00:00:00 PM" android:textSize="16sp" android:background="#FFAADD" /> </LinearLayout>
Imprimirá el texto en el widget
En su lugar, pruebe este código para configurar el texto para textView
public class MyWidgetProvider extends Activity { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.widget_layout); TextView t1=(TextView)findViewById(R.id.update); t1.setText("Hello"); }