Olá tudo bem? Se a versão do kivy que você utilizou é diferente da versão do .kv, é necessário você deixar explícito a versão dessa maneira:
- main.py
import kivy
kivy.require('2.1.0')
from kivy.app import App
from kivy.factory import Factory
class MainApp(App):
def build(self):
return Factory.BoxLayout()
if __name__ == '__main__':
MainApp().run()
- main.kv
#:kivy 2.1.0
<BoxLayout>:
canvas.before:
Color:
rgba: [1,1,1,1]
RoundedRectangle:
pos: root.pos
size: root.size
Button:
text: "Hello World"
Lembrando que este tipo de configuração não é obrigatório, mas não se esqueça do zen do python - confira clicando aqui para ver o artigo Zen dos Zens Conhecidos e Outros Nem Tanto Assim - que diz que Explícito é melhor que Implícito.
Para os que ficarem interessados para saber mais sobre kivy, vejam minha publicação aqui do TabNews: