키비(프레임워크)
Kivy (framework)![]() | |
![]() Kivy Showcase 예시 | |
개발자 | 키비 조직 |
---|---|
초기 릴리즈 | 2011년 2월 [1] | , 전(
안정된 릴리스 | 2.1.0 / 2022년 3월 [2] ; 전( |
저장소 | github |
기입처 | 파이썬, 시톤 |
운영 체제 | 크로스 플랫폼 |
유형 | 응용 프로그램 프레임워크 |
면허증. | MIT(자유 소프트웨어) |
웹 사이트 | kivy |
Kivy는 내추럴 유저 인터페이스(NUI)를 갖춘 모바일 앱 및 기타 멀티터치 애플리케이션 소프트웨어를 개발하기 위한 무료 오픈 소스 Python 프레임워크입니다.이 소프트웨어는 MIT 라이센스 조건에 따라 배포되며 Android, iOS, Linux, macOS 및 Windows에서 실행할 수 있습니다.
Kivy는 Python for Android,[4] Kivy iOS [5]및 모든 플랫폼에서 사용하도록 의도된 다른 라이브러리들과 함께 Kivy [3]조직이 개발한 주요 프레임워크입니다.2012년 Kivy는 Python Software Foundation으로부터 Python 3.[6]3으로 이식하는 대가로 $5000의 보조금을 받았다.Kivy는 바운티소스를 [7]통해 자금을 조달한 라즈베리 파이도 지원합니다.
이 프레임워크에는 다음과 같은 애플리케이션 구축에 필요한 모든 요소가 포함되어 있습니다.
- 마우스, 키보드, TUIO 및 OS 고유의 멀티터치 이벤트에 대한 광범위한 입력 지원
- OpenGL ES 2만을 사용하는 그래픽 라이브러리로, Vertex Buffer Object와 Shader를 기반으로 합니다.
- 멀티터치를 지원하는 광범위한 위젯,
- 커스텀 위젯을 쉽게 설계하는 데 사용되는 중간 언어(KV)[8]입니다.
Kivy는 PyMT 프로젝트의 [9]진화입니다.
코드 예시
다음은 버튼 하나로 Hello world 프로그램을 보여주는 예입니다.
부터 kivy.app 수입품 앱. 부터 kivy.uix. 버튼 수입품 단추 학급 테스트 앱(앱.): 방어하다 구축하다(자신): 돌아가다 단추(본문='헬로 월드') 테스트 앱().달려.()
Kv어
Kv 언어는 Kivy 프레임워크에서 사용자 인터페이스와 상호작용을 설명하는 데 사용되는 언어입니다.다른 사용자 인터페이스 마크업 언어와 마찬가지로 전체 UI를 쉽게 만들고 상호 작용을 첨부할 수 있습니다.예를 들어 파일 브라우저를 포함하는 Loading 대화상자와 Cancel / Load 버튼을 작성하려면 먼저 Python에서 기본 위젯을 작성한 후 Kv에서 UI를 구성합니다.
대체로.py:
학급 LoadDialog(로드대화상자)(플로트 레이아웃): 방어하다 장전(자신, 파일명): 통과하다 방어하다 취소하다(자신): 통과하다
관련 Kv:
#: 키비 1.11.1 <Load Dialog>: 박스 레이아웃: 크기: root.size 포스: root.pos. 오리엔테이션: "실패" File Chooser List 뷰: 아이디: 파일 선택기 박스 레이아웃: size_size_y: 없음. 높이: 30 단추: 본문: "취소" on_release: root.syslog() 단추: 본문: "로드" on_release: root.load(filechooser.path, filechooser).선택)
또는 레이아웃(여기서는 박스 레이아웃)과 버튼을 main.py 파일에 직접 로드할 수 있습니다.
관련 프로젝트
- Buildozer, Android 및 iOS용 범용 Python 패키지입니다.
- 플랫폼 의존형 API를 위한 플랫폼 의존형 Python 래퍼인 플라이어.
- PyJNIus, Python에서 Java/Android API에 동적으로 액세스합니다.
- Pyobjus, Python에서 Objective-C/iOS API에 동적으로 액세스합니다.
- Android용 Python, Android용 Python 애플리케이션 구축 및 패키징 툴 체인.
- iOS용 Kivy, iOS용 Kivy 애플리케이션 구축 및 패키징 툴 체인.
- Audiostream, 마이크와 스피커에 직접 접속할 수 있는 라이브러리.
- KivEnt, Kivy용 엔티티 기반 게임 엔진.
- Kivy Garden, 커뮤니티에 의해 작성 및 유지 보수된 위젯 및 라이브러리.
- Kivy SDK Packager, Windows, MacOS 및 Linux에서 Kivy SDK 생성용 스크립트.
- Kivy 리모트 셸, 리모트 SSH+Python 인터랙티브 셸 애플리케이션.
- 라즈베리 파이의 최신 Kivy 프레임워크를 실행하는 Raspbian 기반 배포판인 KivyPie.
- OSCPy, 빠르고 신뢰성 높은 OSC 구현.
- 환경변수에 따라 Python 코드 부분을 포함하거나 제거하는 프리프로세서인 조미료.
- KivyAuth, Google, Facebook, GitHub 및 Kivy 앱의 트위터 계정을 통한 소셜 로그인.
- KivMob, AdMob은 Kivy 앱을 지원합니다.
- Kivy MD는 Kivy용 재료 설계 위젯 세트입니다.
구글 서머 오브 코드
Kivy는 Python Software Foundation 아래에서 Google Summer of Code에 참여했습니다.
「 」를 참조해 주세요.
- 또 다른 Python 게임 API인 Pygame은 Simple Direct Media Layer 위에 레이어입니다.
- 코코스2d
- 팬더3D
- 피글렛
- Android용 스크립트 레이어
레퍼런스
- ^ "Kivy changelog", kivy.org, retrieved 2016-04-05
- ^ "Kivy 2.1.0". github.com. 2022-03-06. Retrieved 2022-04-04.
- ^ "About us", kivy.org
- ^ "Python for Android", github.com
- ^ "Kivy for iOS", github.com
- ^ "Kivy and Python 3.3, project started", Google Groups
- ^ "Kivy on Raspberry Pi", bountysource.com
- ^ "Programming Guide » Kv language", kivy.org
- ^ "FAQ: How is Kivy related to PyMT?", kivy.org, retrieved 2012-06-09
- ^ "Google Summer of Code 2014 @ the Python Software Foundation".
- ^ "Google Summer of Code 2015 @ the Python Software Foundation".
- ^ "Google Summer of Code 2016 @ the Python Software Foundation".
- ^ "Google Summer of Code 2017 @ the Python Software Foundation".