В чем разница между намерением и намерением? - PullRequest
0 голосов
/ 30 апреля 2020

это код:

override fun itemClicked(id: Long) { val intent = Intent(this, DetailActivity::class.java) intent.putExtra(DetailActivity.EXTRA_ID, id.toInt()) startActivity(intent) }

И теперь я знаю, что это явное намерение, и я могу вызвать с ним действие и передать некоторые данные. Но есть такое намерение:

intent.putExtra(DetailActivity.EXTRA_ID, id.toInt()) startActivity(intent)

В Android Studio я получаю всплывающую подсказку, как это "намерение" из getIntent / setIntent. Может кто-нибудь объяснить мне немного больше об этом или некоторых ссылках, если вы понимаете меня, о чем я пытаюсь спросить.

Спасибо.

Ответы [ 2 ]

1 голос
/ 30 апреля 2020

Activity имеет getIntent / setIntent методы, и такие методы (с «get» и «set» в именах в java) представлены как свойства в kotlin. Когда вы создали переменную с тем же именем, вы скрыли это «свойство». https://kotlinlang.org/docs/reference/java-interop.html#getters и-сеттеры

0 голосов
/ 30 апреля 2020

Intent является именем класса, а intent является переменной, его имя также может быть i ., Намерением является просто имя, которое вы для вашей переменной.

        val i = Intent(this, DetailActivity::class.java)
        i.putExtra(DetailActivity.EXTRA_ID, id.toInt())
        startActivity(i)

Таким образом, в приведенном выше примере нет intent , но все равно код будет работать, так что intent - это просто имя переменной, здесь вы можете указать любое имя ты хочешь.

...