#python #android #windows #kivy
#python #Android #Windows #kivy
Вопрос:
Я разрабатывал мобильное приложение в Kivy. Однако я что-то удалил в файле .py (не могу вспомнить, что), и теперь я не могу получить ничего, кроме черного экрана, когда запускаю программу. Я максимально упростил файлы .py и .kv, чтобы уменьшить количество сбоев, и он все еще не работает.
Вот файл .py:
from kivy.app import App
from kivy.lang import Builder
from kivy.uix.screenmanager import ScreenManager, Screen
from kivy.core.text import LabelBase
from kivy.properties import ObjectProperty
from kivy.uix.boxlayout import BoxLayout
from kivy.clock import Clock
from time import strftime
from kivy.uix.widget import Widget
from kivy.uix.gridlayout import GridLayout
from kivy import Config
Config.set('graphics', 'multisamples', '0')
class Anasayfa(Widget):
pass
kv = Builder.load_file(r"C:UsersCasperDesktopmy.kv")
class myApp(App):
def Build(self):
return (kv)
if __name__ == "__main__":
myApp().run()
В разделе импорта есть некоторые ненужные вещи, они взяты из разработки самого приложения.
Вот файл .kv:
<Anasayfa>
GridLayout:
cols:1
Label:
text:"Coming soon"
color: 1,1,1,1
Вот и все, я упростил оба файла, и они все еще не работают. Сообщений об ошибках нет, только черный экран и курсор мыши. Черный экран также находится в полноэкранном режиме, но виджеты не закрывали экран, когда все работало (подумайте об этом, как о просмотре экрана телефона на экране ноутбука).
Вот журнал событий:
[INFO ] [Logger ] Record log in C:UsersCasper.kivylogskivy_20-08-26_13.txt
[INFO ] [Kivy ] v1.11.1
[INFO ] [Kivy ] Installed at "C:UsersCasperanaconda3envsCasperEnvlibsite-packageskivy__init__.py"
[INFO ] [Python ] v3.7.7 (default, May 6 2020, 11:45:54) [MSC v.1916 64 bit (AMD64)]
[INFO ] [Python ] Interpreter at "C:UsersCasperanaconda3envsCasperEnvpython.exe"
[INFO ] [Factory ] 184 symbols loaded
[INFO ] [Image ] Providers: img_tex, img_dds, img_sdl2, img_pil, img_gif (img_ffpyplayer ignored)
[INFO ] [Text ] Provider: sdl2
[INFO ] [Window ] Provider: sdl2
[INFO ] [GL ] Using the "OpenGL" graphics system
[INFO ] [GL ] GLEW initialization succeeded
[INFO ] [GL ] Backend used <glew>
[INFO ] [GL ] OpenGL version <b'4.5.0 - Build 25.20.100.6373'>
[INFO ] [GL ] OpenGL vendor <b'Intel'>
[INFO ] [GL ] OpenGL renderer <b'Intel(R) HD Graphics 520'>
[INFO ] [GL ] OpenGL parsed version: 4, 5
[INFO ] [GL ] Shading version <b'4.50 - Build 25.20.100.6373'>
[INFO ] [GL ] Texture max size <16384>
[INFO ] [GL ] Texture max units <32>
[INFO ] [Window ] auto add sdl2 input provider
[INFO ] [Window ] virtual keyboard not allowed, single mode, not docked
[INFO ] [Base ] Start application main loop
[INFO ] [GL ] NPOT texture support is available
[INFO ] [Base ] Leaving application in progress...
[INFO ] [WindowSDL ] exiting mainloop and closing.
Я был бы признателен, если бы кто-нибудь мог сказать мне, что не так, потому что я понятия не имею, что здесь не так. Спасибо.
Ответ №1:
Ваш kv
файл не создает корневой виджет, он только создает правило. Вы можете изменить:
<Anasayfa>
Для:
Anasayfa:
так что он создает корневой виджет.
Другая проблема заключается в вашем myApp
определении. У него должен быть build()
метод, а не Build()
метод. Скорее всего, просто опечатка.
Комментарии:
1. Я не могу поверить, что это было так просто. Спасибо!
Ответ №2:
как насчет людей, которые все еще не могут заставить что-либо отображаться на экране?
GridLayout: cols: 1 размер: root.ширина, корень.высота
GridLayout:
cols:2
Label:
Text: "username"
TextInput:
multiline:False
Label:
Text: "password"
TextInput:
multiline:False
Button:
text: "confirm"#then save it and run the code