使用widget作为按钮-android eclipse

使用widget作为按钮-android eclipse,android,eclipse,button,widget,Android,Eclipse,Button,Widget,我有一个小部件,我想在用户单击小部件时打开一个新窗口。 谁能告诉我怎么做,你能给我一些代码吗? 我目前正在学习如何使用java在Eclipse中制作android应用程序。 提前谢谢 您可以通过添加 android:clickable="true" 或通过调用 view.setClickable(true); 在java中。 看 然后,您可以指定一个来执行您想要的任何操作。更改扩展了AppWidgetProvider的类。您可以查看对简单小部件的调用。这样,您就可以在扩展AppWidgetP

我有一个小部件,我想在用户单击小部件时打开一个新窗口。 谁能告诉我怎么做,你能给我一些代码吗? 我目前正在学习如何使用java在Eclipse中制作android应用程序。
提前谢谢

您可以通过添加

android:clickable="true"
或通过调用

view.setClickable(true);
在java中。 看


然后,您可以指定一个来执行您想要的任何操作。

更改扩展了
AppWidgetProvider的类。
您可以查看对简单小部件的调用。这样,您就可以在扩展AppWidgetProvider的类中检测小部件的单击事件。这里,MyWidgetProvider是一个将在后台运行的服务

public class MyWidgetProvider extends AppWidgetProvider {

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

            RemoteViews remoteViews = new RemoteViews(context.getPackageName(), R.layout.widgetview);
            remoteViews.setOnClickPendingIntent(R.id.widgetlayout1, buildButtonPendingIntent(context));
        pushWidgetUpdate(context, remoteViews);
        }

    public static PendingIntent buildButtonPendingIntent(Context context) {

      Log.d("MyWidgetProvider", "click");
     Intent intent = new Intent(context,secondactivity.class);// Add secondactivity to Manifest
     context.startActivity(intent);
    return PendingIntent.getBroadcast(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
        }
我已经看到了你正在使用的。。您可以将上述代码放入
LovelyBatteryWidget
类中

编辑

public static void pushWidgetUpdate(Context context, RemoteViews remoteViews) {
        ComponentName myWidget = new ComponentName(context, MyWidgetProvider.class);
        AppWidgetManager manager = AppWidgetManager.getInstance(context);
        manager.updateAppWidget(myWidget, remoteViews);     
    }

查看教程以供参考。

在我的代码中为新窗口创建另一个活动它是seconhdActivity

在小部件的事件中,使用我在代码中使用的意图

Intent mIntent = new Intent(MainActivity.this,
                    SecondActivity.class);
            startActivity(mIntent);
==========================================================================

公共类MainActivity扩展了活动{

Button btnButton;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    btnButton = (Button) findViewById(R.id.button1);
    btnButton.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub

            Intent mIntent = new Intent(MainActivity.this,
                    SecondActivity.class);
            startActivity(mIntent);

        }
    });

}

}

正确搜索,您将获得许多教程。我有1个错误:pushWidgetUpdate(上下文,远程视图)//找不到该方法如果我创建了一个新的pushWidgetUpdate()方法,我应该在该方法中放置什么?我应该将整个代码以及类声明放在LovelyBatteryWidget类中吗?我应该在我必须创建的pushWidgetUpdate方法中放置什么,这样就不会出现找不到方法的错误?提前谢谢!我看了教程,他们使用了一个小部件按钮,我也看了新的boston教程,他们也使用了一个按钮,所以我的问题是:如何将小部件转换为按钮,这样我就可以使用该按钮上的侦听器?请看我正在使用的网站上的代码。这是我需要使用此按钮的行:remoteview.setonclickpendingent(R.id.widget_按钮,buildbuttonpendingent(上下文))//这段代码不是widget_按钮,而是你给我的教程链接中的代码,我可以在按钮中添加用作widget_按钮的drawable吗?