移动端

Kivy 跨平台 App 开发

用 Python 构建 iOS 和 Android 应用。一套代码,多端运行。

📚 60 课时 ⏱ 28 小时 📱 跨平台
课程章节

60 课时,打造移动应用

01

Kivy 基础与安装

了解 Kivy 框架的核心理念,完成环境搭建,编写并运行第一个 Hello World 移动应用。

6 课时
1.1Kivy 框架简介跨平台理念、OpenGL 渲染、事件驱动架构
1.2环境搭建与配置pip install kivy、虚拟环境、IDE 配置
1.3Hello World 应用App/Widget 结构、run() 启动、窗口配置
1.4Kivy 核心概念Widget/Event Loop/Context、生命周期
1.5开发工具介绍Kivy Inspector、语言模式、调试技巧
1.6第一个完整应用计数器应用:按钮+标签+事件绑定
02

KV 语言与界面设计

学习 Kivy 专属的 KV 声明式语言,掌握用 KV 文件高效描述界面布局与属性绑定。

7 课时
2.1KV 语法基础缩进规则、属性赋值、规则定义
2.2属性绑定机制on_xxx 事件、属性监听、双向绑定
2.3事件处理语法on_press/on_release、自定义回调
2.4样式与主题定义canvas 绘制、颜色/字体/间距统一管理
2.5自定义控件继承 Widget、KV 规则覆盖、复合控件
2.6动态加载 KVBuilder.load_file/string、热重载
2.7KV 最佳实践模块化 KV、命名规范、性能优化
03

常用控件详解

深入掌握 Button、Label、TextInput、Image、Slider、Spinner 等常用 UI 控件的用法与自定义。

7 课时
3.1Button 与 ImageButton按钮样式、状态切换、图片按钮、禁用状态
3.2Label 与富文本文本对齐、自动换行、字体大小、颜色标记
3.3TextInput 输入框多行输入、密码模式、输入过滤、焦点管理
3.4Image 与 AsyncImage图片缩放、异步加载、纹理管理
3.5Slider 滑块范围设置、步长、值绑定、自定义外观
3.6Spinner 下拉选择选项列表、默认值、选择回调
3.7Switch/CheckBox/RadioButton开关切换、复选框组、单选按钮组
04

布局与响应式设计

学习 BoxLayout、GridLayout、FloatLayout、StackLayout 等布局方式,适配不同屏幕尺寸。

6 课时
4.1BoxLayout 线性布局水平/垂直排列、spacing/padding、权重分配
4.2GridLayout 网格布局行列数、col_default_width/row_default_height
4.3FloatLayout 浮动布局绝对定位/相对定位、size_hint/pos_hint
4.4StackLayout 堆叠布局RL/TT/LR 等方向、自动换行排列
4.5AnchorLayout 锚点布局左上/居中/右下等九宫格锚点
4.6屏幕尺寸适配dp/sp 单位、密度无关像素、多屏适配策略
05

事件处理与交互

掌握 Kivy 事件绑定机制,实现触摸手势、按钮回调、键盘输入以及动画效果。

6 课时
5.1事件绑定机制bind/unbind、事件传播、冒泡机制
5.2触摸手势识别on_touch_down/move/up、手势检测
5.3按钮回调系统on_press/on_release、长按检测、防抖
5.4键盘输入处理on_key_down/up、快捷键绑定、虚拟键盘
5.5动画 Animation属性动画、序列动画、并行动画、缓动函数
5.6手势识别进阶滑动/缩放/旋转手势、自定义手势识别器
06

数据绑定与列表

学习 Property 数据绑定系统,使用 ListView 和 RecycleView 实现动态数据列表展示。

6 课时
6.1Property 系统StringProperty/ListProperty/DictProperty
6.2ObservableObject可观察对象、属性变化监听、自动 UI 更新
6.3ListView 列表列表项模板、滚动列表、选中状态
6.4RecycleView 虚拟列表大数据量列表、视图回收、性能优化
6.5数据模型设计MVC/MVVM 模式、数据层与视图层分离
6.6动态数据更新增删改操作、实时列表刷新、动画过渡
07

网络请求与 API

集成 HTTP 请求库,调用 RESTful API 获取和提交数据,处理异步网络通信。

5 课时
7.1HTTP 请求基础requests/urllib、GET/POST 请求
7.2RESTful API 调用JSON 解析、请求头、认证处理
7.3JSON 数据解析json.loads/dumps、嵌套数据、错误处理
7.4异步加载机制后台线程加载、加载指示器、超时处理
7.5离线缓存策略网络状态检测、本地缓存、数据同步
08

本地存储与数据库

使用 SQLite、JSON 文件和 Kivy 的 Settings 模块实现应用数据的本地持久化存储。

5 课时
8.1SQLite 数据库sqlite3 模块、CRUD 操作、表设计
8.2JSON 文件存储json 读写、配置存储、列表数据持久化
8.3Settings 模块Kivy Settings 面板、配置项定义、默认值
8.4数据迁移策略版本管理、schema 升级、数据备份恢复
8.5加密存储方案敏感数据加密、密钥管理、安全存储
09

打包发布 App

学习使用 Buildozer 和 KivyMD 打包工具,将应用编译为 Android APK 和 iOS 安装包并发布。

6 课时
9.1Buildozer 配置buildozer.spec 文件、依赖声明、图标设置
9.2Android APK 打包buildozer android debug/release、签名
9.3iOS 应用打包kivy-ios 工具链、Xcode 集成、证书配置
9.4权限管理配置AndroidManifest.xml、权限声明、运行时权限
9.5应用签名与发布密钥库生成、APK 签名、发布签名
9.6应用商店上架Google Play/Apple Store 提交、审核注意事项
10

实战项目:天气 App

综合运用所学知识,从零构建一个完整的天气查询应用,包含 API 调用、数据展示与本地缓存。

6 课时
10.1项目需求分析功能规划、界面原型、技术选型
10.2API 接口集成天气 API 调用、数据解析、错误处理
10.3UI 界面设计KV 布局设计、天气图标、动画效果
10.4天气数据展示温度/湿度/风力展示、未来预报列表
10.5本地缓存实现SQLite 缓存、离线模式、自动刷新
10.6测试与发布功能测试、性能测试、打包发布到商店
在线练习

动手试一试

app_demo.py
输出结果
点击 "运行" 查看结果...

构建你的第一个 App

60 课时,用 Python 做移动应用

← 返回课程列表