Android FAQ: What does the Android isScrollContainer
XML setting do?
From the Android docs:
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. If not set, the default value will be true if “scrollbars” has the vertical scrollbar set, else it will be false.
Must be a boolean value, either “true” or “false”.
You set isScrollContainer
in the definition of an XML widget like this:
android:isScrollContainer = "true" android:isScrollContainer = "false"
As a more complete example, I just created an Android EditText
component like this:
<EditText android:id="@+id/quoteTextArea" android:layout_width="match_parent" android:layout_height="wrap_content" android:inputType="textMultiLine" android:isScrollContainer="true" android:editable="true" android:enabled="true" android:minLines="6" android:maxLines="6" android:hint="Type your description here" android:textIsSelectable="true" android:focusable="true" />
isScrollContainer
is explained like this on SO:
A scrolling container is one where the size of the container is independent of its content. For instance you can make a
ScrollView
orListView
of height 100 pixels, but you can fit as much content in as you want.If a container is scrollable, then Android knows it can shrink the size of the container without rendering parts of the content of the container inaccessible (since the user can just scroll down to see things not on screen). It uses this for when the SoftKeyboard is opened -- if a container is scrollable it will shrink it as much as possible in an attempt to keep all of the elements on screen.
In my example I wanted an EditText field with exactly six lines, and because of my XML definition, that field will scroll if the user types more than that.