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

如何在Android Studio中创建MVVM架构组件的重复层级文件目录?

Android Studio创建重复MVVM目录/文件结构的方法

功能名称

Android Studio自带的File and Code Templates(文件和代码模板)功能,完全支持批量生成重复的目录与文件结构,正好适配你创建MVVM组件的需求。如果只是快速生成单文件的代码骨架,也可以配合Live Templates(实时模板)使用。

创建目标层级结构的具体操作

方法1:自定义模板一键生成整套组件

这是最高效的方式,适合频繁创建MVVM组件的场景:

  1. 打开设置:File → Settings(Windows/Linux)或Android Studio → Settings(Mac),快捷键Ctrl+Alt+S(Windows/Linux)/Cmd+,(Mac)。
  2. 进入Editor → File and Code Templates,切换到Files标签页。
  3. 点击右上角+号新建模板:
    • Name:命名为MVVM Flutter Component(适配你的Dart文件场景)
    • Extension:留空(因为要生成目录结构而非单个文件)
    • Template Text:粘贴以下内容(变量会自动替换你输入的组件名称):
      #set($componentName = ${NAME})
      #set($pascalName = ${NAME.split('_').collect { it.capitalize() }.join('')})
      
      ${componentName}/model/params.dart
      ${componentName}/view/view.dart
      ${componentName}/view_model/view_model.dart
      
      // 给params.dart添加基础代码
      #set($paramsFile = "${componentName}/model/params.dart")
      #set($content = "class ${pascalName}Params {\n  // 这里添加参数定义\n}")
      #createFile($paramsFile, $content)
      
      // 给view.dart添加基础代码
      #set($viewFile = "${componentName}/view/view.dart")
      #set($viewContent = "import 'package:flutter/material.dart';\nimport '../view_model/${componentName}_view_model.dart';\n\nclass ${pascalName}View extends StatefulWidget {\n  const ${pascalName}View({super.key});\n\n  @override\n  State<${pascalName}View> createState() => _${pascalName}ViewState();\n}\n\nclass _${pascalName}ViewState extends State<${pascalName}View> {\n  final _viewModel = ${pascalName}ViewModel();\n\n  @override\n  Widget build(BuildContext context) {\n    return Scaffold(\n      appBar: AppBar(title: const Text('${pascalName}')),\n      body: const Center(child: Text('${pascalName} View')),\n    );\n  }\n}")
      #createFile($viewFile, $viewContent)
      
      // 给view_model.dart添加基础代码
      #set($vmFile = "${componentName}/view_model/${componentName}_view_model.dart")
      #set($vmContent = "import '../model/${componentName}_params.dart';\n\nclass ${pascalName}ViewModel {\n  // 这里添加业务逻辑\n}")
      #createFile($vmFile, $vmContent)
      
  4. 点击Apply→OK保存模板。
  5. 使用模板:在项目视图右键目标父目录,选择New → MVVM Flutter Component,输入组件名(比如user_center),回车后就能自动生成你要的整套目录+带基础代码的文件。

方法2:手动快速创建(临时场景)

如果不想自定义模板,也可以用Android Studio的路径自动创建功能:

  • 右键父目录→New → Directory,输入component_name/model,回车后会自动创建component_name和model两级目录。
  • 重复上述步骤创建component_name/view和component_name/view_model目录。
  • 进入每个目录右键→New → Dart File,创建对应的params.dart、view.dart、view_model.dart文件。

内容的提问来源于stack exchange,提问作者leylekseven

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 13:20:28