Thanks Jeff, the work-around works well.

On Aug 7, 7:45 pm, Jeff Sharkey <[email protected]> wrote:
> Doh, good catch.  The View.setVisibility() method is marked with the
> @android.view.RemotableViewMethod annotation, which is what allows it
> to be called through RemoteViews.  In this case,ProgressBaractually
> overrides the default View implementation, but without adding that
> annotation.  (This is why it throws the exception.)
>
> One quick workaround is to wrap theProgressBarinto a simple view
> like FrameLayout, and then setVisibility() on that wrapper.
>
> j
>
>
>
> On Fri, Aug 7, 2009 at 3:49 PM, Craig<[email protected]> wrote:
>
> > I was trying to set a progress bar to View.INVISIBLE or View.GONE, or
> > View.VISIBLE inside an AppWidgetProvider. However, it doesn't seem to
> > want to do it. Settingvisibilityworks fine with TextView fields or
> > ImageView fields or ImageButtons. However,ProgressBardoesn't seem to
> > work. It doesn't make sense that just the progress bar type isn't
> > supported for controllingvisibility. Has anyone else seen this
> > problem?
>
> > The code:
>
> >   �...@override
> >    public void onUpdate(Context context, AppWidgetManager
> > appWidgetManager, int[] appWidgetIds) {
>
> >        RemoteViews updateViews = new RemoteViews(context.getPackageName(),
> > R.layout.a_widget_home_screen);
>
> >        updateViews.setViewVisibility(R.id.progress_bar,
> > View.VISIBLE);
> >    }
>
> > <?xml version="1.0" encoding="utf-8"?>
> > <RelativeLayout
> >        xmlns:android="http://schemas.android.com/apk/res/android";
> >        android:orientation="vertical"
> >        android:layout_width="fill_parent"
> >        android:layout_height="fill_parent">
>
> >        <ProgressBarandroid:id="@+id/progress_bar"
> >                android:layout_height="32px"
> >                android:layout_width="32px"
> >                android:indeterminate="true"
> >                android:layout_marginLeft="110px"
> >                android:layout_marginTop="120px"
> >                android:visibility="gone"
> >                />
>
> > </RelativeLayout>
>
> > This is the error:
>
> > 08-07 17:42:42.633: WARN/AppWidgetHostView(102): updateAppWidget
> > couldn't find any view, using error view
> > 08-07 17:42:42.633: WARN/AppWidgetHostView(102):
> > android.widget.RemoteViews$ActionException: view:
> > android.widget.ProgressBarcan't use method with RemoteViews:
> > setVisibility(int)
> > 08-07 17:42:42.633: WARN/AppWidgetHostView(102):     at
> > android.widget.RemoteViews$ReflectionAction.apply(RemoteViews.java:
> > 443)
> > 08-07 17:42:42.633: WARN/AppWidgetHostView(102):     at
> > android.widget.RemoteViews.performApply(RemoteViews.java:855)
> > 08-07 17:42:42.633: WARN/AppWidgetHostView(102):     at
> > android.widget.RemoteViews.apply(RemoteViews.java:832)
> > 08-07 17:42:42.633: WARN/AppWidgetHostView(102):     at
> > android.appwidget.AppWidgetHostView.updateAppWidget
> > (AppWidgetHostView.java:167)
> > 08-07 17:42:42.633: WARN/AppWidgetHostView(102):     at
> > android.appwidget.AppWidgetHost.updateAppWidgetView(AppWidgetHost.java:
> > 243)
> > 08-07 17:42:42.633: WARN/AppWidgetHostView(102):     at
> > android.appwidget.AppWidgetHost$UpdateHandler.handleMessage
> > (AppWidgetHost.java:73)
> > 08-07 17:42:42.633: WARN/AppWidgetHostView(102):     at
> > android.os.Handler.dispatchMessage(Handler.java:99)
> > 08-07 17:42:42.633: WARN/AppWidgetHostView(102):     at
> > android.os.Looper.loop(Looper.java:123)
> > 08-07 17:42:42.633: WARN/AppWidgetHostView(102):     at
> > android.app.ActivityThread.main(ActivityThread.java:3948)
> > 08-07 17:42:42.633: WARN/AppWidgetHostView(102):     at
> > java.lang.reflect.Method.invokeNative(Native Method)
> > 08-07 17:42:42.633: WARN/AppWidgetHostView(102):     at
> > java.lang.reflect.Method.invoke(Method.java:521)
> > 08-07 17:42:42.633: WARN/AppWidgetHostView(102):     at
> > com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run
> > (ZygoteInit.java:782)
> > 08-07 17:42:42.633: WARN/AppWidgetHostView(102):     at
> > com.android.internal.os.ZygoteInit.main(ZygoteInit.java:540)
> > 08-07 17:42:42.633: WARN/AppWidgetHostView(102):     at
> > dalvik.system.NativeStart.main(Native Method)
>
> --
> Jeff Sharkey
> [email protected]
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to