Skip to Content

Kivy: Interactive Applications in Python

€26.99
List Price: €0.00
Sub Title: 

Create cross-platform UI/UX applications and games in Python with this book and ebook

Price: €26.99
Create cross-platform UI/UX applications and games in Python with this book and ebook
ISBN: 
1783281596
ISBN 13: 
9781783281596
Kivy: Interactive Applications in Python
Cover photo: 
Available: 
Available
Rank: 
1000
Sales Rank: 
9999
Language: 
English
Title Set Up Date: 
September 2013
Public Visibility Date: 
September 2013
Date Of Publication: 
September 2013
Out Of Print Date: 
September 2013
Page Count: 
138
Height: 
235
Width: 
191
Weight: 
0.50
Detailed Description: 

Mobiles and tablets have brought with them a dramatic change in the utility of applications. Compatibility has become essential, and this has increased the kind of interaction that users expect: gestures, multi-touches, animations, and magic pens. Kivy is an open source Python solution that covers these market needs with an easy-to-learn and rapid development approach. Kivy is growing fast and gaining attention as an alternative to the established developing platforms.

Kivy: Interactive Applications in Python quickly introduces you to the Kivy development methodology. You will learn some examples of how to use many of the Kivy components, as well as understand how to integrate and combine them into big projects. This book serves as a reference guide and is organized in such a way that once finished, you will have already completed your first project.

You will start by learning the Kivy Language for building User Interfaces (UI) and vector figures. We then proceed to the uses of Kivy events and properties to glue the UI with the application logic.

You then go on to build an entire User Interface (UI) starting from a hand-made sketch. Furthermore, you will go on to understand how to use the canvas and drawing instructions to create different types of geometrical figures. Finally, you will be introduced to a big set of interactive and smooth features: transformations (scale, rotate, and translate), gestures, animations, scheduling tasks, and multi-touch elements.

Kivy: Interactive Applications in Python expands your knowledge by introducing various components that improve the User Experience (UX). Towards the end of the book, you will be confident to utilize Kivy components and strategies to start any application or game you have in mind.

  • Use Kivy to implement apps and games in Python that run on multiple platforms
  • Discover how to build a User Interface (UI) through the Kivy Language
  • Glue the UI components with the logic of the applications through events and the powerful Kivy properties
  • Detect gestures, create animations, and schedule tasks
  • Control multi-touch events in order to improve the User Experience (UX)
Learn: 
  • Build a User Interface (UI) using the Kivy Language
  • Understand and alter the order of execution of the drawing instructions
  • Use the powerful Kivy properties to keep the UI always updated with the last user interactions
  • Bind and unbind Kivy events to control widgets (UI components), touches, the mouse and keyboard, animations, and clock
  • Scale, rotate, and translate widgets
  • Control and switch between different screens
  • Develop and use your own single gestures
  • Create animations and combine them to bring widgets to life
  • Add different types of translations to the animations
  • Comprehend the main strategies to control the multi-touch events
  • Schedule single or repetitive tasks such as animations
Approach: 

Kivy: Interactive Applications in Python is an easy-to-follow book that will guide you into the world of Kivy.

Audience: 

This book is aimed at Python developers who are familiar with Python and have a good understanding of concepts like inheritance, classes, and instances. No previous experience of Kivy is required, though some knowledge of event handling, scheduling, and user interfaces, in general, would boost your learning.

keywords: 
<p>Kivy, Python app development, PyMT, Android/iOS app development using Kivy</p>
Special offer section
Display discount offers: 
Display discount offers
Code Downloads: 
Discounted price: 
€26.99
Errata: 
<pre><b>Errata type: Code | Page number: 55 </b></pre> <pre>Line 46 of the code should read: # File name: comicwidgets.py</pre> <pre>instead of&nbsp;</pre> <pre># File name: comicwidgets.kv</pre>
<pre><pre><b><b>Errata type: Code | Page number: 42</b> </b></pre> </pre> <pre>Line 136 of the code should read:</pre> <pre><pre>136. xyz:(5,.5,0)</pre> <pre>should be</pre> <pre><span style="font-size: 10px;">136. xyz:(.5,.5,0)</span></pre> </pre> <pre></pre>
<p>Errata Type: Code | Page number:73</p> <p>The line 289 is as follows:</p> <p>msg_text: _msg_label.text</p> <p>&nbsp;</p> <p>It should be:</p> <p>&nbsp;</p> <p>msg_label: _msg_label</p>
<p>Errata Type: Code related | Page number: 73</p> <p>The given information box is :</p> <p>In Python, the previous_counter(line 276) is a static attribute of the StatusBarclass. This means that it is shared among all the StatusBarinstances, and it can be accessed in any of the ways shown in lines 281, 283, and 285 (however line 281 is recommended). In contrast, the selected variable (line 248) is an attribute of a DraggableWidgetinstance. This means that there is a selectedvariable per StatusBarobject. It is not shared among them. They are created until the constructor (__init__) is called on. The only way to access it is through obj.selected(line 248)</p> <p>&nbsp;</p> <p>It should be :</p> <p>&nbsp;</p> <p>In Python, the previous_counter (line 276) is a static attribute of the StatusBar class. This means that it is shared among all the StatusBar instances, and it can be accessed in any of the ways shown in lines 281 and 283 (however line 281 is recommended because doesn't depend on the name of the class). In contrast, the selected variable (line 248) is an attribute of a DraggableWidget instance. This means that there is a selected variable per StatusBar object. It is not shared among them. They are created until the constructor (__init__) is called on. The only way to access it is through obj.selected (line 248).</p>
<p>Errat type: Code | Page number:72</p> <p>The on_counter &nbsp;method&nbsp;(lines 278 to 285) in the statusbar.py is as follows:</p> <p><span style="font-family: mceinline;">def on_counter(self, instance, value):</span></p> <p><span style="font-family: mceinline;">&nbsp;if value == 0:</span></p> <p><span style="font-family: mceinline;">&nbsp;self.msg_text = "Drawing space cleared"</span></p> <p><span style="font-family: mceinline;">&nbsp;elif value - 1 == self.__class__.previous_counter:</span></p> <p><span style="font-family: mceinline;">&nbsp;self.msg_text = "Widget added"</span></p> <p><span style="font-family: mceinline;">&nbsp;elif value + 1 == self.previous_counter:</span></p> <p><span style="font-family: mceinline;">StatusBar.msg_text = "Widget removed"</span></p> <p><span style="font-family: mceinline;">&nbsp;self.previous_counter = value</span></p> <p>&nbsp;</p> <p>It should be:</p> <p>&nbsp;</p> <div><span style="font-size: medium;"><span style="font-family: mceinline;">def on_counter(self, instance, value):</span></span></div> <div><span style="font-size: medium;"><span style="font-family: mceinline;">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp;if value == 0:</span></span></div> <div><span style="font-size: medium;"><span style="font-family: mceinline;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;self.msg_label.text = "Drawing space cleared"</span></span></div> <div><span style="font-size: medium;"><span style="font-family: mceinline;">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp;elif value - 1 == self.__class__.previous_counter:</span></span></div> <div><span style="font-size: medium;"><span style="font-family: mceinline;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;self.msg_label.text = "Widget added"</span></span></div> <div><span style="font-size: medium;"><span style="font-family: mceinline;">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp;elif value + 1 == StatusBar.previous_counter:</span></span></div> <div><span style="font-size: medium;"><span style="font-family: mceinline;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;self.msg_label.text = "Widget removed"</span></span></div> <div><span style="font-size: medium;"><span style="font-family: mceinline;">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp;self.__class__.previous_counter = value</span></span></div>
Sample Chapter: 
http://packtlib.packtpub.com/sites/default/files/9781783281596_Chapter-01.pdf
Brand: 
Open Source
Publishing division: 
OS
Pre-publication Band: 
B
Product Format: 
PB
Book Type: 
Mini
RAW: 
Normal
In PacktLib: 
Enabled
Sell eBook Only: 
Book + eBook
Miscellaneous Settings
Enable Google Ads conversion: 
Disabled
Packtlib Thumb Toggle (eBook/cheat sheet only): 
On
Code Download and Errata
Packt Anytime, Anywhere
Register Books
Print Upgrades
eBook Downloads
Video Support
Contact Us