Android Anko Kotlin - Предварительная загрузка просмотров - PullRequest
0 голосов
/ 16 октября 2019

Я немного новичок в Kotlin в Android, я заметил, что библиотека Anko предоставляет хороший инструмент для создания макетов, для просмотра активного представления и определения представлений с помощью кода.

I 'Я пытаюсь использовать Anko для определения различных представлений шаблонов, чтобы показать асинхронность, но перед тем, как показывать новый вид, я хотел бы предварительно загрузить его, например, веб-страницу или удаленное изображение и т. д.

Я не смогнайти любую информацию о том, если это выполнимо или нет.

    override fun onCreate(savedInstanceState: Bundle?, persistentState: PersistableBundle?) {
        super.onCreate(savedInstanceState, persistentState)
        MyActivityUI().load("http://some.address.ip")
        val handler = Handler()
        handler.postDelayed({
            MyActivityUI().setContentView(this)
        }, 5000)
    }
}

class MyActivityUI : AnkoComponent<MyActivity> {
    lateinit var wv: WebView

    override fun createView(ui: AnkoContext<MyActivity>) = with(ui) {
        verticalLayout {
            wv = webView {
                webViewClient = WebViewClient()
            }.lparams(width = matchParent, height = matchParent)
        }
    }
}

Это частично, но показано, что я намерен делать, поэтому, когда таймер 5с сделан, веб-страница уже загружена в представление, вместо того, чтобы начать загружать

Любойпредложения?

1 Ответ

0 голосов
/ 17 октября 2019

Чтобы точно ответить на ваш вопрос, вы можете просто сохранить ссылку на родительское представление и вызвать для него addView и передать веб-представление. Однако вы можете рассмотреть возможность установки видимости для View.GONE / View.INVISIBLE. Я точно не уверенкакова ваша цель здесь. Также рассмотрите возможность использования обратного вызова, который определяет завершение загрузки страницы, а не общие 5 секунд. Надеюсь это поможет.

...