Android Kotlin открыть ссылку с помощью кнопки - PullRequest
0 голосов
/ 13 февраля 2019

Я пытаюсь открыть ссылку с кнопкой в ​​Kotlin, но если я использую этот код

fun openNewTabWindow(urls: String, context: Context) { 
    val uris = Uri.parse(urls) 
    val intents = Intent(Intent.ACTION_VIEW, uris) 
    val b = Bundle() 
    b.putBoolean("new_window", true) 
    intents.putExtras(b)
    context.startActivity(intents)
}

И в моей кнопке я использую

openNewTabWindows("https://Google.com/")

Это говорит, что нужен контекстПосле URL?

Что это значит?

1 Ответ

0 голосов
/ 13 февраля 2019

openNewTabWindow(urls: String, context: Context) функция требует 2 параметра, String и Context.

И в моей кнопке я использую openNewTabWindows("https://Google.com/")

Вы только что вызвали эту функцию с 1 параметром, затем, конечно,

Это говорит о необходимости контекста. После URL.

Вам необходимо передать Contextкак второй параметр.Поскольку вы говорите, что реализуете действие нажатия кнопки (которая находится внутри @Override public void onClick(View v) {} в Java или Lambda с типом (View) -> Unit в Kotlin), которая, вероятно, находится внутри Activity, и ссылка this может быть изменено, вы можете передать getContext() или, например, MainActivity.this в качестве контекста, необходимого для программы, или

openNewTabWindows("https://Google.com/", context) // Kotlin version of getContext()
openNewTabWindows("https://Google.com/", this@MainActivity) // Kotlin version of MainActivity.this

Может оба ОК.

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