Позиционирование в kivy

здравствуйте, есть такой код:

from kivy.app import App
from kivy.uix.dropdown import DropDown
from kivy.uix.button import Button
from kivy.uix.floatlayout import FloatLayout
from kivy.base import runTouchApp
from kivy.uix.checkbox import CheckBox


class CustomDropDown(DropDown):
    pass





class app(App):
    def build(self):

        dropdown = CustomDropDown()
        mainbutton = Button(text='', size_hint=(0.3, 0.1))
        mainbutton.pos_hint = {'top': 1, 'right': 1}
        mainbutton.bind(on_release=dropdown.open)
        dropdown.bind(on_select=lambda instance, x: setattr(mainbutton, 'text', x))

        button = Button(text='салам', size_hint=(None, None))
        button.pos_hint = {'center_x': 1, 'center_y': 1}

        mainbutton.add_widget(button)
        return mainbutton


if __name__ == '__main__':
    app().run()

я хочу кнопку “салам” переместить в другое место, но вот это “button.pos_hint = {‘center_x’: 1, ‘center_y’: 1}” не помогает

а если так написать:

 button = Button(text='салам', size_hint=(None, None), pos=(1,1))

если сделать так то при изменении размера окна кнопка не будет менять расположение

А так?)

 button = Button(text='салам', size_hint=(None, None), pos_hint={'center_x': 1, 'center_y': 1})

неработает

https://kivy.org/doc/stable/api-kivy.uix.widget.html#kivy.uix.widget.Widget.pos_hint

pos_hint is not used by all layouts. Check the documentation of the layout in question to see if it supports pos_hint.

Видимо Button (mainbutton) не поддерживает это и надо брать другой layout (и положить туда кнопки) или самому вычислять в on_size.

решил попробовать так:

FloatLayout.add_widget(mainbutton)
        FloatLayout.add_widget(button)

        return FloatLayout

выдаёт ошибку:

add_widget() missing 1 required positional argument: 'widget'

Надо экземпляр FloatLayout создать, как сделано со всеми другими классами тут.