У меня уникальный случай проблемы с веб-просмотром (в отличие от любой другой проблемы в сети, поэтому, пожалуйста, прежде чем отмечать ее как дубликат, прочтите ее) Итак, у меня есть веб-просмотр, который прокручивается нормально, но как только я нажимаю кнопку внутри веб-просмотра, появляется всплывающее окно с просьбой ввести имя, адрес электронной почты и т. д., Но как только я начинаю вводить свое имя и т. д., Появляется клавиатура, скрывающая контент на третья строка всплывающего окна, которая в моем случае является электронным письмом. Я не могу прокручивать этот веб-просмотр (всплывающее окно), пока фон прокручивается нормально. Как я могу исправить эту проблему? Я попробовал adjustresize и несколько других подходов в Интернете, но пока безуспешно. Вот мой код:
<?xml version = "1.0" encoding = "utf-8"?>
<LinearLayout xmlns:android = "http://schemas.android.com/apk/res/android"
xmlns:app = "http://schemas.android.com/apk/res-auto"
android:layout_width = "match_parent"
android:layout_height = "match_parent"
android:background = "@color/colorWhite"
android:orientation = "vertical">
<android.support.design.widget.AppBarLayout
android:id = "@+id/appBarLayout"
android:layout_width = "match_parent"
android:layout_height = "wrap_content"
android:theme = "@style/AppTheme.Redesign">
<android.support.v7.widget.Toolbar
android:id = "@+id/toolbar"
android:layout_width = "match_parent"
android:layout_height = "@dimen/toolbar_and_status_bar_height"
android:background = "@color/toolbar_background"
android:paddingTop = "@dimen/status_bar_height"
app:popupTheme = "@style/ThemeOverlay.AppCompat.Light" />
</android.support.design.widget.AppBarLayout>
<WebView
android:id = "@+id/webView"
android:layout_width = "match_parent"
android:layout_height = "match_parent" />
</LinearLayout>
Вот мой файл kt для того же:
webView.settings.javaScriptEnabled = true
webView.settings.javaScriptCanOpenWindowsAutomatically = true
webView.settings.setAppCacheEnabled(true)
webView.settings.cacheMode = WebSettings.LOAD_DEFAULT
webView.settings.allowFileAccess = true
webView.settings.allowContentAccess = true
webView.settings.allowFileAccessFromFileURLs = true
webView.settings.allowUniversalAccessFromFileURLs = true
webView.settings.domStorageEnabled = true
webView.webChromeClient = WebChromeClient()
webView.webViewClient = object : WebViewClient() {
override fun onPageFinished(view: WebView?, url: String?) {
hideProgress()
super.onPageFinished(view, url)
}
override fun onReceivedError(view: WebView?, request: WebResourceRequest?, error: WebResourceError?) {
hideProgress()
super.onReceivedError(view, request, error)
}
override fun shouldOverrideUrlLoading(view: WebView?, request: WebResourceRequest?): Boolean {
if (request?.url?.toString()?.startsWith("mailto:") == true) {
val intent = Intent(Intent.ACTION_VIEW, request.url)
startActivity(intent)
return true
}
if (request?.url?.toString()?.startsWith("tel:") == true) {
startActivity(Intent(Intent.ACTION_DIAL, request.url))
return true
}
return super.shouldOverrideUrlLoading(view, request)
}
}
webView.loadUrl(urlToOpen)
Any ideas how to go ab out it?
Заранее спасибо!
конечно, только что отредактировал свой вопрос с макетом
Любопытно, а вы пробовали изменить высоту вашего WebView на match_parent?
да, это то, что было изначально, исправлено в моем вопросе. wrap_content был тестовым запуском, когда все остальное не удалось
Ой, я могу ошибаться, но мне кажется, что это можно исправить только в Интернете или в самом javascript.
они исправили это в chromeview, теперь кажется, что в Chrome прокручивается нормально, но у меня все еще не работает :(
Это действительно похоже на проблему с рендерингом, возможно, вам просто нужен хромоподобный движок или стороннее веб-представление, чтобы помочь вам с этой проблемой.
есть ли в Интернете какие-либо примеры того, как этого добиться? почему мы не можем сделать это с помощью самого клиента Chrome?
Я не совсем уверен, но надеюсь, что это может вам помочь: stackoverflow.com/questions/14537083/…
Благодарность! попробую. также в другой заметке, любая идея, как это сделать: stackoverflow.com/questions/53511227/…
Можете ли вы опубликовать полный XML-макет, на котором размещен ваш
<WebView>?