kivy学习笔记

我真的劝劝大家,真的不要使用kivy,不Bug很多,打包的时候我画了四天的时间都没成功,下面的命令是从官网复制的,我运行它,装了虚拟机.......最后崩溃。

kivy介绍

kivy是一个开源的库gui库, 可以在Windows,mac, linux,android,ios运行,kivy更多介绍可到kivy官网进行查看

功能

kivy安装

    确保已经安装了Python, 安装Python详见Python官网, 安装Python后, 打开终端输入如下命令:

pip install Cython
pip install kivy

kv语言介绍

kv语言是kivy提供的一种方便用户编写kivy代码的工具, kv语言和python一样简单易懂,命名规则为继承App的类名去掉App, 后面将用kv语言进行教学

 kivy基本布局

kivy的基本布局包涵在kivy的uix里,也封装在kivy的uix里,使用import导入kivy 的uix的布局

from kivy.uix.你要使用的布局 import 布局

kivy基本控件

    kivy的控件基本包涵在kivy的uix里, 基本空间有Button,  labde, TextInput...

使用import导入kivy.uix里的控件

from kivy.uix.你要使用的控件 import 控件

Label的使用:

Label是kivy的一个标签控件用于写入文本,我们以hello World作示例

py文件

  首先导入kivy.uix里的Label以及floatlayaut布局:

from kivy.uix import label
from kivy.app import App
from kivy.uix.floatlayout import Floatlayout

先在python文件中创建一个类app继承Floatlayout布局

class app(floatlayout.FloatLayout):
    """使用‘pass’内容将在kv文件中写"""
    pass

再创建一个类,继承App,这个类用来运行我们的ui界面


class myApp(App):
    def build(self):
        return app()

if __name__ == '__main__':
    myApp().run()
kv文件

第一行表是对app这个类进行写入使用FloatLayout布局再在这个布局里创建一个Label,也可以在里面创建多个,但是你就需要调整控件的大小,不然控件会进行重叠因为FloatLayout允许控件重叠,不然就要更换为其它布局,

<app>:
    FloatLayout:
        Label:
            text:'hello World'
            # 可以和python一样用‘#’注释

运行结果:

简简单单就在这里创建了一个label
Label常用属性:
属性介绍
text标签显示的文本
color字体的颜色,格式为rgba,默认为白色[1,1,1,1]
font_size字体大小, 默认15px
bold 是否加粗(Ture或False)
font_name字体文件名(*.ttf)

笔记:对于kivy显示中文可以对font_name进行设置

Button的使用

Button是kivy中的按钮控件,被按下会发出一个信号,被放开也会发出一个信号,下面以hello World作示例

py文件
from kivy.uix.floatlayout import FloatLayout
from kivy.app import App
class app(FloatLayout):
    pass

class MyApp(App):
    def build():
        return app()
if __name__ == '__main__'
    MyApp().run()
kv文件
<app>:
    FloatLayout:
        Button:
            text:'hello world'
            # 按钮显示的文字
            color:'red'
            # 按钮字体颜色
            font_size:'20px'
            # 字体大小

Button常用属性:

属性介绍
text按钮显示的文字
color按钮显示字体的颜色
font_size字体大小(以px为单位)
font_name字体文件名(*.ttf)

Button常用事件:

事件介绍
on_click当用户按下按钮时触发
on_press当用户释放按钮时触发
Button事件的绑定

kivy打包

window, linux, mac打包

window, linux, mac都可以用PyInstaller进行打包,安装PyInstaller命令

pip3 install PyInstaller
Android打包
使用虚拟机镜像进行打包

下载一个虚拟机和镜像文件

链接:镜像文件(访问码:gu4z)

安装成功后打开虚拟机,再打开文件管理器, 找到test打开后再里面创建一个文件夹,再在终端打开(注意:终端要切换到项目所在目录),再在终端输入kdpp go修改配置文件后,等待打包完成,就可以在bin文件夹里看到apk文件,传输到手机就可以安装了

使用buildozer打包:

buildozer适用于Linux系统,所以也需要安装虚拟机,安装完虚拟机后,运行虚拟机打开终端输入命令

pip3 install buildozer

再切换到项目所在的位置

cd 你的项目位置

初始化buildozer

buildozer init

修改配置文件后,输入打包命令打包

buildozer android debug run
错误处理

这个过程非常漫长,它要下载android ndk, android jdk...这些东西,我等了好几个小时, .buildozer文件夹建议留着,这样下次打包可以不用再下载

  • 21
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值