Pekkak
Pekkak

Reputation: 131

How can I add WebView into a Widget?

I'm trying to make a recording Widget where the user interface would be loaded from HTML page in WebView. Is this possible? I've been trying to load url into Widget but I get all sorts of errors and my program crashes. I'm new to Android development and don't really know how this stuff works yet.

This is my Widget provider class:

public class RecordAppWidgetProvider extends AppWidgetProvider {
WebView webview;
@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
    webview.getSettings().setJavaScriptEnabled(true);
    webview.loadUrl("http://www.google.com");
    webview.setWebViewClient(new WebViewClient());

}
}

I think I'll have to load the WebView in some way, normally I do it with this:

webview = (WebView) findViewById(R.id.webview);

But it doesn't work here, I think findViewById is from Activity?

Upvotes: 13

Views: 10702

Answers (2)

Konstantin Burov
Konstantin Burov

Reputation: 69228

You can't use WebView within widget layout, sorry. As the documentation states the only supported views are:

  • AnalogClock
  • Button
  • Chronometer
  • ImageButton
  • ImageView
  • ProgressBar
  • TextView

Honeycomb Added more supported views:

  • ViewFlipper
  • ListView
  • GridView
  • StackView
  • AdapterViewFlipper

Upvotes: 17

Thorben
Thorben

Reputation: 6981

I believe it is not possible to use webviews in a widget. Only more static things like lists and pictures can be used.

Upvotes: 0

Related Questions