# easy-word **Repository Path**: aopmin/easy-word ## Basic Information - **Project Name**: easy-word - **Description**: 这是一个背英语单词app,支持自定义词库和两种测试方式,帮助用户高效学习和记忆英语单词。 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-01-19 - **Last Updated**: 2026-01-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: Android, Java ## README # 英语单词测试app ## 项目描述 这是一个功能完整的英语单词测试app,支持自定义词库和两种测试方式,帮助用户高效学习和记忆英语单词。 ## 功能特性 ### 1. 词库管理 - ✅ 添加新单词 - ✅ 编辑现有单词 - ✅ 删除单词 - ✅ 查看所有单词 - ✅ 实时显示词库单词数量 ### 2. 两种测试方式 #### 测试方式一:看中文写英文 - 随机抽取10个单词进行测试 - 显示中文意思,用户输入英文单词 - 实时反馈答案正确性 - 支持跳过当前题目 - 自动进入下一题 #### 测试方式二:看英文选中文 - 随机抽取10个单词进行测试 - 显示英文单词,用户从10个中文选项中选择正确答案 - 实时反馈答案正确性 - 自动高亮显示正确答案 - 支持点击进入下一题 ### 3. 测试结果 - 显示得分和正确率 - 支持重新测试 - 支持返回主菜单 ## 系统架构 ### 1. 架构设计 该应用采用了经典的MVC(Model-View-Controller)架构模式: - **Model**:负责数据管理,包括Word实体类和WordDBHelper数据库助手 - **View**:负责界面展示,包括各种Activity和布局文件 - **Controller**:负责业务逻辑,处理用户交互和数据流转 ### 2. 数据流程 1. **词库管理流程**: - 用户通过WordManagementActivity添加/编辑/删除单词 - 操作通过WordDBHelper持久化到SQLite数据库 - RecyclerView实时更新显示最新单词列表 2. **测试流程**: - 用户选择测试方式进入对应测试Activity - 从数据库随机获取10个单词 - 用户完成答题后,系统自动计算得分 - 显示测试结果,支持重新测试或返回主菜单 ### 3. 核心类关系 ``` ┌─────────────────┐ ┌─────────────┐ ┌─────────────────┐ │ MainActivity │ │ Word │ │ WordDBHelper │ ├─────────────────┤ ├─────────────┤ ├─────────────────┤ │ -onCreate() │ │ -id: int │ │ -getRandomWords()│ │ -updateWordCount()│ │ -english: String│ │ -getAllWords() │ └────────┬────────┘ │ -chinese: String│ └────────┬────────┘ │ └─────────────┘ │ │ │ ▼ ▼ ┌─────────────────┐ ┌─────────────┐ ┌─────────────────┐ │ WordManagement │ │ WordAdapter │ │ TestType1Activity│ │ Activity │────▶│ │ ├─────────────────┤ ├─────────────────┤ └─────────────┘ │ -checkAnswer() │ │ -loadWords() │ └────────┬────────┘ │ -showWordEditDialog() │ └─────────────────┘ │ │ ▼ ┌─────────────────┐ │ TestType2Activity│ ├─────────────────┤ │ -generateOptions()│ └────────┬────────┘ │ ▼ ┌─────────────────┐ │ ResultActivity │ └─────────────────┘ ``` ## 项目结构 ``` app/src/main/ ├── java/cn/aopmin/easyword/ │ ├── MainActivity.java # 主界面 │ ├── Word.java # 单词实体类 │ ├── WordDBHelper.java # 数据库管理 │ ├── WordManagementActivity.java # 词库管理 │ ├── WordAdapter.java # 单词列表适配器 │ ├── TestType1Activity.java # 测试方式一 │ ├── TestType2Activity.java # 测试方式二 │ └── ResultActivity.java # 测试结果 └── res/ ├── layout/ │ ├── activity_main.xml # 主界面布局 │ ├── activity_word_management.xml # 词库管理布局 │ ├── item_word.xml # 单词列表项布局 │ ├── dialog_word_edit.xml # 添加/编辑单词对话框 │ ├── activity_test_type1.xml # 测试方式一布局 │ ├── activity_test_type2.xml # 测试方式二布局 │ └── activity_result.xml # 测试结果布局 └── values/ ├── strings.xml # 字符串资源 ├── colors.xml # 颜色资源 └── themes.xml # 主题资源 ``` ## 使用说明 ### 1. 主界面 打开应用后,您将看到主界面,包含以下功能: - 显示当前词库单词数量 - 选择测试方式一 - 选择测试方式二 - 进入词库管理 ### 2. 词库管理 点击"词库管理"按钮进入词库管理界面: - 点击"添加单词"按钮添加新单词 - 点击单词项的"编辑"按钮修改单词 - 点击单词项的"删除"按钮删除单词 - 点击"返回"按钮回到主界面 ### 3. 测试方式一:看中文写英文 1. 点击"测试方式一:看中文写英文"按钮开始测试 2. 屏幕上会显示中文意思,在输入框中输入对应的英文单词 3. 点击"提交"按钮检查答案 4. 系统会显示答案是否正确,并自动进入下一题 5. 点击"跳过"按钮直接进入下一题 6. 完成所有题目后,查看测试结果 ### 4. 测试方式二:看英文选中文 1. 点击"测试方式二:看英文选中文"按钮开始测试 2. 屏幕上会显示英文单词,从10个中文选项中选择正确答案 3. 点击选项后,系统会显示答案是否正确,并高亮显示正确答案 4. 点击"下一题"按钮进入下一题 5. 完成所有题目后,查看测试结果 ### 5. 测试结果 测试完成后,您将看到: - 得分情况(如:8/10) - 正确率(如:80%) - 点击"重新测试"按钮重新进行当前测试 - 点击"返回主菜单"按钮回到主界面 ## 构建和运行 ### 前置条件 - Android Studio 4.0+ - JDK 8+ - Android SDK API 24+ ### 构建步骤 1. 使用Android Studio打开项目 2. 等待Gradle同步完成 3. 连接Android设备或启动模拟器 4. 点击"Run"按钮运行应用 ### 命令行构建 ```bash # 构建项目 ./gradlew build # 安装到设备 ./gradlew installDebug ``` ## 技术栈 - **开发语言**:Java - **开发框架**:Android SDK - **数据库**:SQLite - **UI组件**:RecyclerView、GridView、AlertDialog - **构建工具**:Gradle ## 项目亮点 1. **模块化设计**:代码结构清晰,易于维护和扩展 2. **用户友好界面**:简洁直观的交互设计 3. **灵活的测试方式**:支持两种不同的测试模式 4. **本地数据存储**:无需网络连接,随时随地学习 5. **实时反馈**:及时的答案反馈,增强学习效果 6. **响应式设计**:适配不同屏幕尺寸 ## 未来改进方向 - [ ] 支持导入/导出词库 - [ ] 添加单词分类功能 - [ ] 支持音频发音 - [ ] 添加学习记录统计 - [ ] 支持云同步 - [ ] 添加更多测试模式 ## 许可证 MIT License ## 贡献 欢迎提交Issue和Pull Request! --- **Happy Learning! 📚**