You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android Studio「New」菜单中无「Widget」选项,如何创建新App Widget?

Android Studio「New」菜单中无「Widget」选项,如何创建新App Widget?

嗨,我之前也遇过这个糟心的情况!明明官方文档说选New>Widget>App Widget就能生成,结果自己的AS菜单里偏偏找不到这个选项。别慌,给你几个实用的解决办法:

  • 通过搜索模板直接创建
    有时候菜单选项会因为AS配置或插件问题隐藏,但模板其实还在。按下快捷键:Windows/Linux用Ctrl+Shift+A,Mac用Cmd+Shift+A,在弹出的搜索框里输入「App Widget」,如果能搜到这个模板,直接点击就能启动自动创建流程,和菜单里点进去的效果一样。

  • 检查你的项目模块类型
    要注意,Widget选项只在Android应用模块(Application Module)里才会显示。如果你的当前模块是Library模块,菜单里肯定找不到。先切换到应用模块(比如app模块),再去New菜单里找找看。另外也可以检查下AS版本,尽量更新到较新的稳定版,旧版本可能存在菜单显示bug。

  • 手动创建所有必要文件
    如果上面的方法都不行,那就手动撸文件吧,其实AS自动生成的也无非是三个核心部分,步骤很清晰:

    1. 创建Widget布局文件:在res/layout目录下新建XML布局(比如widget_main.xml),注意Widget支持的控件有限,像TextView、ImageView这类基础控件没问题,复杂控件比如RecyclerView就别用了,按照需求设计界面即可。
    2. 创建AppWidgetProvider配置文件:在res/xml目录下新建XML文件(比如app_widget_info.xml),内容示例如下,记得替换成自己的包名和资源:
      <appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
          android:minWidth="40dp"
          android:minHeight="40dp"
          android:updatePeriodMillis="86400000"
          android:initialLayout="@layout/widget_main"
          android:widgetCategory="home_screen">
      </appwidget-provider>
      
    3. 创建AppWidgetProvider类:新建一个Kotlin/Java类,继承AppWidgetProvider,重写onUpdate方法处理Widget的更新逻辑,示例(Kotlin):
      class MyWidget : AppWidgetProvider() {
          override fun onUpdate(
              context: Context,
              appWidgetManager: AppWidgetManager,
              appWidgetIds: IntArray
          ) {
              for (widgetId in appWidgetIds) {
                  val views = RemoteViews(context.packageName, R.layout.widget_main)
                  views.setTextViewText(R.id.widget_text, "我的第一个Widget")
                  appWidgetManager.updateAppWidget(widgetId, views)
              }
          }
      }
      
    4. 在Manifest中注册Provider:打开AndroidManifest.xml,添加如下代码,替换成自己的类名和配置文件路径:
      <receiver android:name=".MyWidget">
          <intent-filter>
              <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
          </intent-filter>
          <meta-data
              android:name="android.appwidget.provider"
              android:resource="@xml/app_widget_info" />
      </receiver>
      

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.07 12:43:03