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