My problem is following.
android:Theme.NoTitleBar.Fullscreen
and there is only one Activity
, all other views are Fragment
WebView
inside ViewPager Fragment
which is inside ScrollView
WebView
Window
is not resized/pannedI've tried setting android:windowSoftInputMode="adjustResize"
or android:windowSoftInputMode="adjustPan"
in my manifest for the Activity
. Also tried setting one of those in java.
Normal EditText
inside a ScrollView
in my application does adjust pan properly so user can see where he/she is typing.
UPDATE:
If there is no working solution to get window adjust, is there a way to get WebView
think it's content is like half screen height more bigger so user could at least scroll the input visible.
Okay so this has been an issue from the very beginning and Google hasn't fixed it yet, maybe never. But from the the issue: http://code.google.com/p/android/issues/detail?id=5497 I found potential workaround for this: https://stackoverflow.com/a/19494006/1241783
I have overridden WebView
and I simply added the code for it and it is working well enough to get the window adjusted. It is possible though the code doesn't always work because of various screen heights and might need some adjustments, but in many cases it is working okay and I go with that, since it's the only working solution I have seen.
Try this android:isScrollContainer="false"
in the ScrollView. According to the Android docx.
Set this if the view will serve as a scrolling container, meaning that it can be resized to shrink its overall window so that there will be space for an input method
Hope this will solve your problem
Here is what we have done to make it work. As it is by design, FLAG_FULLSCREEN activity won't allow adjusting the views when a keyboard is visible, we took an approach with custom Keyboard Notification Listener and OnTouch listener of Webview.
KeyboardHelper.java - to find out the keyboard visibility
Webview Full-Screen Activity Adjustment - To adjust the webview based on the notification and touch point.
Hope it helps!
my code was also not able to resize when keyboard opens.
<?xml version="1.0" encoding="utf-8"?>
<WebView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/simple_webview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:scrollbars="none"
/>
i removed (android:scrollbars="none") statement, and it worked ! So that means the app resizes itself only when the container is scrollable. so by default webview containers scrollable area internally.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With