I just can’t seem to make this work in my KivyMD project. I have read the documentation several times but I can’t figure out how to get it how I want. This my python code:
from kivymd.app import MDApp
from kivy.lang import Builder
from kivy.uix.behaviors import ButtonBehavior
from kivy.uix.screenmanager import ScreenManager, Screen
from kivymd.uix.screen import MDScreen
from kivy.core.window import Window
from kivymd.uix.behaviors import CommonElevationBehavior, CircularRippleBehavior
from kivymd.uix.floatlayout import MDFloatLayout
Window.size = (375, 812)
class LoginWindow(MDScreen):
pass
class MainWindow(MDScreen):
pass
class PlayerWindow(MDScreen):
pass
class WindowManager(ScreenManager):
pass
class CircularElevationButton(CommonElevationBehavior, CircularRippleBehavior,
ButtonBehavior, MDFloatLayout):
pass
class myMusicApp(MDApp):
def build(self):
kv = Builder.load_file('myMusicApp.kv')
return kv
if __name__ == '__main__':
myMusicApp().run()
And this is my .kv file:
WindowManager:
LoginWindow:
MainWindow:
PlayerWindow:
<LoginWindow>:
name: 'login'
Button:
text: 'Log in'
on_release: app.root.current = 'player'
<MainWindow>:
name: 'main'
<CircularElevationButton>
size_hint: None, None
size: "100dp", "100dp"
radius: self.size[0] / 2
shadow_radius: self.radius[0]
md_bg_color: "red"
MDIcon:
icon: "hand-heart"
halign: "center"
valign: "center"
pos_hint: {"center_x": .5, "center_y": .5}
size: root.size
pos: root.pos
font_size: root.size[0] * .6
theme_text_color: "Custom"
text_color: "white"
<PlayerWindow>:
name: 'player'
canvas.before:
Color:
rgba: 1, 1, 1, 1
Rectangle:
pos: self.pos
size: self.size
BoxLayout:
orientation: 'vertical'
BoxLayout
size_hint: 1, .06
orientation: 'horizontal'
MDIconButton:
anchor_x: 'left'
anchor_y: 'middle'
icon: 'arrow-left'
style: 'standard'
MDLabel:
text: 'Now Playing'
halign: 'center'
font_name: 'Roboto'
MDIconButton:
icon: 'menu'
Image:
id: 'playerImage'
source: '/Users/name/Desktop/codingProjects/kivy/myNewApp3/ab67616d0000b273715973050587fe3c93033aad.jpeg'
BoxLayout:
size_hint: 1, .15
orientation: 'vertical'
spacing: '10dp'
padding: '10dp'
BoxLayout:
orientation: 'vertical'
CircularElevationButton:
pos_hint: {"center_x": .5, "center_y": .6}
elevation: 4
shadow_softness: 4
This is how it’s supposed to look according to the documentation:
And this is how my result looks. There is no visible elevation and the icon size (font_size) can’t be changed.