Android findViewById未定义类型<;我的班名在这里>;在AppWidgetProvider中

Android findViewById未定义类型<;我的班名在这里>;在AppWidgetProvider中,android,onclick,listener,undefined,android-appwidget,Android,Onclick,Listener,Undefined,Android Appwidget,是否有一行等效的代码可用于findViewById?Eclipse告诉我AppWidgetProvider中的类型没有定义它 我正在尝试为按钮设置一个单击处理程序 public class WidgetProvider extends AppWidgetProvider implements OnClickListener{ final Button buttonOnOff = (Button) findViewById(R.id.button_on_off); @Overr

是否有一行等效的代码可用于findViewById?Eclipse告诉我AppWidgetProvider中的类型没有定义它

我正在尝试为按钮设置一个单击处理程序

public class WidgetProvider extends AppWidgetProvider implements OnClickListener{

    final Button buttonOnOff = (Button) findViewById(R.id.button_on_off);

    @Override
    public void onUpdate(Context context, AppWidgetManager appWidgetManager,
        int[] appWidgetIds) {

        /*
         * Set Click Listener
         */
        buttonOnOff.setOnClickListener(this);

        /*
         * The following 3 lines of code are required to display the widget on the screen.
         */
        RemoteViews remoteView = new RemoteViews(context.getPackageName(),
            R.layout.appwidget_layout);

        ComponentName myWidget = new ComponentName(context,
            WidgetProvider.class);
        appWidgetManager.updateAppWidget(myWidget, remoteView);

    }

    @Override
    public void onClick(View v) {
    }
}

当您使用AppWidgets时,代码的工作方式就大不相同了。基本上,您需要使用RemoteView,而不是传统的按钮和FindViewById。有关如何编写AppWidget的链接,请参见本文。特别是developer.com教程的两个链接。

您好,谢谢您的链接。真的,艾玛德