Android - 打开小部件上下文菜单的意图

时间:2012-04-11 20:43:55

标签: android android-intent widget android-contextmenu

在我的应用程序中我想要当用户单击按钮时应用程序自行关闭并自动打开添加新窗口小部件上下文菜单。 我正在做这个:

if (viewId == R.id.bt_homeScreen) {
        finish();
        try {
            Intent intent = new Intent(Intent.ACTION_MAIN);
            intent.addCategory(Intent.CATEGORY_HOME);
            startActivity(intent);
        } catch (ActivityNotFoundException e) {
            Toast.makeText(this.getApplicationContext(), getResources().getString(R.string.homeClientAlert), Toast.LENGTH_SHORT).show();
        }
    }

这段代码的问题是我只进入手机主屏幕:

http://cdn.androidtapp.com/wp-content/uploads/2009/02/rc33-google-voice-search-for-android-on-home-screen.jpg http://cdn.androidtapp.com/wp-content/uploads/2009/02/rc33-google-voice-search-for-android-on-home-screen.jpg

我希望当我启动Intent时,它会转到主屏幕并打开小部件上下文菜单:

http://www.taosoftware.co.jp/en/android/calendarwidget/img/choosewidget.png http://www.taosoftware.co.jp/en/android/calendarwidget/img/choosewidget.png

1 个答案:

答案 0 :(得分:2)

看看Commonsware对这个问题的回答:Add widget to homescreen from Android application

您将能够显示窗口小部件选择菜单,但您将无法在普通应用程序中处理该选择。使用appwidget选择的应用程序必须实现AppWidgetHost。主屏幕应用程序属于此类别,不属于普通应用程序。