Widget上的TouchEvent,无需创建活动

时间:2010-10-18 10:21:59

标签: android widget

我想在我的小部件上触摸事件后做一些计算。 有没有可能在没有开始活动的情况下这样做?我的问题是我必须在触摸动作中注册onClickPendingIntent ....

我的解决方案有一个烦人的视觉反应:屏幕闪烁为黑色并重新出现在主屏幕上。

这是在widget-provider中:

Intent doit_intent = new Intent(context, DoItActivity.class);
PendingIntent pendingIntent = 
           PendingIntent.getActivity(context,0, doit_intent, 0);
remoteView.setOnClickPendingIntent(R.id.main_widget, pendingIntent);

DoItActivity.class

public class DoItActivity extends Activity {
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    //do some static function calls

    finish();
  }
}

1 个答案:

答案 0 :(得分:2)

然后使用无法启动活动的PendingIntent。使用getService()getBroadcast()代替getActivity()