I am having trouble to reload picture or profile of user. The widget that I want to reload is included in the ScreenOne, I create the function for reloading in this class and try to call it from the function in the class Change. Here is my main.py: from kivy.app import App from kivy.uix.boxlayout import BoxLayout from kivy.uix.image import Image import readtable import Readpictureadress import sizetable import Match import nbofpictures import random from kivy.uix.screenmanager import ScreenManager, Screen, NoTransition from kivy.properties import ObjectProperty, NumericProperty, StringProperty import kivy size = sizetable.main() Iduserp = (random.randint(1, size)) imagenb=0 picadress= Readpictureadress.main(Iduserp, 0) class Manager(ScreenManager): screen_one = ObjectProperty(None) screen_two = ObjectProperty(None) class ScreenTwo(Screen): print('screentwo') pass class ScreenOne(Screen): img = StringProperty() global picadress global Iduserp def __init__(self, **kwargs): super(ScreenOne, self).__init__(**kwargs) self.img = picadress def displayScreenThenLeave(self): print('Displayscreen') self.changeScreen() def changeScreen(self): print('changescreen') if self.Manager.current == 'screen1': self.Manager.current = 'screen2' else: self.Manager.current = 'screen1' pass def reloadprofile(self): self.img = picadress self.ids.a1.reload() class Change(): global Iduserp global imagenb global picadress def changeuser(self): size = sizetable.main() Iduserp = (random.randint(1, size)) app = App.get_running_app() app.screenone.reloadprofile() def changepicturenb (self): nbofpic = nbofpictures.main(Iduserp) if imagenb < nbofpic: imagenb += 1 else: imagenb = 0 app = App.get_running_app() app.screenone.reloadprofile() class ScreensApp(App): print('ScreensApp') screenone=ScreenOne() varChange= Change() def build(self): m = Manager(transition=NoTransition()) return m if __name__ == "__main__": ScreensApp().run() My kivy file: #:kivy 1.8.0 <ScreenTwo>: <ScreenOne>: stuff_a: a1 BoxLayout: orientation: 'vertical' rows: 4 BoxLayout: orientation: 'vertical' rows: 1 size_hint_y: 0.8 AsyncImage id:a1 source:root.img on_touch_down: app.varChange.changepicturenb() BoxLayout: padding: 10,10,10,0 spacing: 10 size_hint: 1,0.3 orientation: "horizontal" Button: text: "Clear" on_touch_down: app.varChange.changeuser() Button: text: "Remove" Button: text: "Group" Button: text: "Color" Button: text: "Gestures" <Manager>: id: screen_manager screen_one: screen_one screen_two: screen_two ScreenOne: id: screen_one name: "screen1" manager: screen_manager ScreenTwo: id: screen_two name: "screen2" manager: screen_manager and my error file: > File "main7.py", line 105, in changeuser > app.screenone.reloadprofile() File "main7.py", line 60, in reloadprofile > self.ids.a1.reload() File "kivy\properties.pyx", line 839, in kivy.properties.ObservableDict.__getattr__ (kivy\properties.c:12654) > AttributeError: 'super' object has no attribute '__getattr__' Continue reading...