2 xiaoyan 12 xiaoyan_12 于 2013.03.15 11:03 提问

点击widget时,如何在主activity中调用一个程序

在activity(MainForm.java)中有一个程序来显示toast。下面是代码:

package com.application.TestingWidget3;

import android.app.Activity;
import android.os.Bundle;
import android.widget.Toast;

public class MainForm extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        onlyToast();
    }

    public void onlyToast()
    {
        Toast.makeText(this, "Only Showing Toast", 1).show();
    }
}

当点击widget时,如何在HelloWidget.java上调用onlyToast()程序?
附加 HelloWidget code:

package com.application.TestingWidget3;
import android.appwidget.AppWidgetProvider;

public class HelloWidget extends AppWidgetProvider {
    // What should i do here??
}

感谢大家能给我帮助。

3个回答

sasuke38
sasuke38   2013.03.15 16:03
已采纳

单击widget 说明你的activity没有运行或者在background 说实话你的本意只想运行onlyToast这个方法? 那样的话你可以在一个broadcastreceiver中调用这个方法 需要把这个方法复制到broadcastreceiver那里 然后传递一个context 不要用this 单击widget的按钮的时候发送一个广播即可触发

dianqiugg
dianqiugg   2013.03.16 10:04

如果不想跳转页面,那么使用广播或者服务都可以实现

yongyong_21
yongyong_21   2013.03.18 17:42

你可以参考 application widget 的介绍

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!