Вызовите функцию набора свойств внутри класса в Kotlin - PullRequest
0 голосов
/ 28 января 2020

Мне бы хотелось, чтобы каждый раз, когда мой класс устанавливал свойство, чтобы он вызывал функцию set для этого свойства.

вот что я пытаюсь сделать:

var text = ""
    set(value) {
        field = value
        //Do some other things
        ....
    }

...

fun someFunction() {
    ...
    //This should do everything in the set function, not just set the value
    text = "new text" 
    ...
}

Я пытался сделать this.text = "new text", но все равно просто установить значение text на new text. Есть ли способ вызвать функцию set из моего класса, или мне нужно создать отдельную функцию setText, как я сделал бы в Java?

1 Ответ

2 голосов
/ 28 января 2020

Вы уже звоните сеттеру. Просто бывает, что вы звоните только field = value внутри него. Попробуйте использовать внутри нее функцию println и убедитесь, что сеттер действительно вызван.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...