图像在Kivy中无效

时间:2017-04-30 02:36:36

标签: android python python-3.x kivy kivy-language

我用Kivy编写了一个显示主菜单屏幕的程序,当按下播放按钮时,它会设置一个背景图像。按下按钮时,代码设置为打印,但它没有设置背景图像。我也没有收到任何错误。

这是主菜单: Main Menu

这是Python代码:

var latitude = $('#google-map').data('latitude')
var longitude = $('#google-map').data('longitude')
function initialize_map() {
    var myLatlng = new google.maps.LatLng(latitude,longitude);
    var mapOptions = {
        zoom: 14,
        scrollwheel: false,
        center: myLatlng
    };
    var map = new google.maps.Map(document.getElementById('google-map'), mapOptions);
    var contentString = '';
    var infowindow = new google.maps.InfoWindow({
        content: '<div class="map-content"><ul class="address">' + $('.address').html() + '</ul></div>'
    });
    var marker = new google.maps.Marker({
        position: myLatlng,
        map: map
    });
    google.maps.event.addListener(marker, 'click', function() {
        infowindow.open(map,marker);
    });
}
google.maps.event.addDomListener(window, 'load', initialize_map);

这是Kivy代码(不一定是必要的):

import kivy
kivy.require("1.9.1")

from kivy.uix.boxlayout import BoxLayout
from kivy.app           import App
from kivy.uix.label     import Label
from kivy.uix.button    import Button
from kivy.uix.image     import Image

def AddBackground():
    print("Image Added")
    return Image(source = "Background.jpg")

class MyLayout(BoxLayout):

    def PlayPressed(self):
        print("Play Button Pressed")
        AddBackground()

    def LeaderPressed(self):
        print("Leader Boards Button Pressed")

    def CreditsPressed(self):
        print("Credits Button Pressed")

    def SettingsPressed(self):
        print("Settings Button Pressed")

class MainMenuApp(App):

    def build(self):
        return MyLayout()


if __name__ == "__main__":
    MainMenuApp().run()

我需要做些什么来制作背景?

1 个答案:

答案 0 :(得分:0)

您尚未将图片添加到任何内容,请尝试更改当前屏幕背景:

 background_image = StringProperty("default.png")
 ...
 def PlayPressed(self):
    print("Play Button Pressed")
    self.background_image = "Background.jpg"

在kv文件中:

<MyLayout>:

    background_image: "default.png"
    canvas.before:
        Rectangle:
            pos: self.pos
            size: self.size
        Image:
            source: self.background_image