KivyMD安装详解以及可能遇到的坑
来源:互联网 发布:太湖雪蚕丝被知乎 编辑:程序博客网 时间:2024/06/06 13:59
项目地址:https://github.com/captainbupt/KivyMdDemo
项目简介:这是一个试用KivyMD写的demo。应老板需求,必须使用纯python代码完成,因此demo中不包含任何kivy language展示界面。
Kivy是一个基于python的跨平台应用开发框架。它同时支持Linux, Windows, OS X, Android和iOS,并且能够识别大部分的操作。
而kivyMD则是一个基于kivy的一个扩展包,它的目的是提供一个类似于Google Material Design的一套控件,这样,使用者就可以方便的将android上的Material Design效果移植到其他的平台上去。
安装
首先,本次安装过程要求全程翻墙,否则无法下载对应的控件。
那么第一步,是kivy的安装,可以参照https://kivy.org/#download,根据自己的平台去做相应的操作。这里以mac下python3.5为例:
- 首先下载mac下python3对应的安装包
- 下载完成后,解压缩文件,可以得到Kivy2.app
- 执行命令
sudo mv Kivy2.app /Applications/Kivy.app
添加到应用列表中去 - 添加链接命令到/usr/local/bin下
ln -s /Applications/Kivy.app/Contents/Resources/script /usr/local/bin/kivy
(此时可使用命令kivy -V
来查看版本,请务必保证和当前python版本一致) - 安装KivyMD的一个依赖module
kivy -m pip install kiva-garden
(如果安装不成功,可以尝试直接pip install kivy-garden
) - 安装garden这个module的一个子module
garden install recycle view
.
再次提醒,以上步骤必须翻墙,否则无法安装成功。
安装完成后,从gitlab上把KivyMD clone下来:git clone https://gitlab.com/kivymd/KivyMD.git
,然后执行kivy setup.py install
就可以完成KivyMD的安装了。
最后测试:kivy kitchen_sink.py
就能够看到demo界面了。
坑
- 如果执行
kivy kitchen_sink.py
出现No module named 'theming'
,应该属于兼容性上的问题。解决方法:对与python3来说,需要手动把kivymd中对应的py控件中的from theming import ThemableBehavior
修改成from kivymd.theming import ThemableBehavior
,from elevationbehavior import ElevationBehavior
修改成from kivymd.elevationbehavior import ElevationBehavior
。需要修改的文件包括dialog.py
、textfields.py
、spinner.py
、slidingpanel.py
等(具体根据执行kivy kitchen_sink.py
的错误提示进行判断)。全部修改完后,再次执行kivy setup.py install
即可。 - 修改完以上问题后,可能还会出现
KeyError: 'kivy.garden.recycleview'
,这可能是由于garden本身存在的bug,导致recycleview没有被装到需要的位置。解决方法:打开命令行,输入ivy
进入python命令行。执行语句import sys
,然后print(sys.path)
,在结果中,找到以ivy结尾的路径,在mac中为/Applications/Kivy.app/Contents/Resources/kivy/
,然后进入该目录下的kivy/garden
,执行git clone https://github.com/kivy-garden/garden.recycleview.git
。然后执行mv garden.recycleview recycle view
即可。如果还出现上述问题,说明进入的路径有误,请从sys.path
找到其他可能的路径。
0 0
- KivyMD安装详解以及可能遇到的坑
- CocoaPods详解——安装和使用以及可能遇到的错误
- svn 配置详解,以及各种可能遇到的问题
- svn 配置详解,以及各种可能遇到的问题
- svn 配置详解,以及各种可能遇到的问题
- eclipse下安装tomcat以及可能遇到的404问题
- 使用CMake + MinGW + Eclipse 开发OpenCV --编译,使用以及可能遇到的问题详解
- cocoapods安装、安装中可能遇到问题以及使用
- CentOS 7编译安装php7.0.7以及可能遇到的问题的解决方案
- ubuntu16.04+caffe 安装可能遇到的坑
- 准确教小白安装ubuntu14.04以及解决可能遇到的问题
- windows下安装集成php开发环境以及可能遇到的问题
- eclipse安装SVN可能遇到的意外!
- python 安装扩展可能遇到的问题
- 安装protobuf可能遇到的问题
- linux 安装oracle可能遇到的问题
- mac安装hadoop可能遇到的问题
- cuda安装与可能遇到的问题
- ONU
- QUdpSocket收不到回复及分析
- C#中枚举类型的使用
- 微信Android客户端架构演进之路
- 判断textView点击完成 回收键盘
- KivyMD安装详解以及可能遇到的坑
- RSync实现文件备份同步
- 自定义Toast显示归属地查询结果
- ScrollView嵌套GridView显示不全的解决办法
- UIview需要知道的一些事情:setNeedsDisplay、setNeedsLayout
- 个人iOS项目常用效果方法注意点集锦(上)----简书
- Dijkstra算法
- EnumSet源码分析
- Maven仓库管理之Nexus