Reputation: 6591
I'm using an EditText of some predefined size, however when a user enters more text then fits in the text box, they aren't able to scroll the text with touch. Scrolling does work with a trackball.
What can I do to fix this?
Upvotes: 7
Views: 33592
Reputation: 2657
A simple way to do scroll-able text in edittext if parent is NestedScrollView or ScrollView
XML code
android:gravity="top"
android:inputType="text|textMultiLine"
android:lines="5"
Use below code for Kotlin
editText.setOnTouchListener { v, event ->
if (v.id == R.id.editText) {
v.parent.requestDisallowInterceptTouchEvent(true)
when (event.action and MotionEvent.ACTION_MASK) {
MotionEvent.ACTION_UP -> v.parent.requestDisallowInterceptTouchEvent(false)
}
}
false
}
Upvotes: 0
Reputation: 7131
In java
EditText dwEdit = (EditText) findViewById(R.id.DwEdit);
dwEdit.setOnTouchListener(new OnTouchListener() {
public boolean onTouch(View view, MotionEvent event) {
// TODO Auto-generated method stub
if (view.getId() ==R.id.DwEdit) {
view.getParent().requestDisallowInterceptTouchEvent(true);
switch (event.getAction()&MotionEvent.ACTION_MASK){
case MotionEvent.ACTION_UP:
view.getParent().requestDisallowInterceptTouchEvent(false);
break;
}
}
return false;
}
});
In xml
<EditText
android:id="@+id/DwEdit"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:minLines="10"
android:scrollbarStyle="insideInset"
android:scrollbars="vertical"
android:overScrollMode="always"
android:inputType="textCapSentences">
</EditText>
Upvotes: 10
Reputation: 53647
make the changes like the following to get scroller in your EditText
questionEntry.setScroller(new Scroller(myContext));
questionEntry.setMaxLines(1);
questionEntry.setVerticalScrollBarEnabled(true);
questionEntry.setMovementMethod(new ScrollingMovementMethod());
How to make edittext in Android scrollable?
Donot forget to vote if you feel my response is helpful for you
Thanks Deepak
Upvotes: 15
Reputation: 6322
If you would like the text to scroll horizontally, define in your EditText XML tag:
android:scrollHorizontally="true"
If you would like a vertical scroll, define in your EditText XML tag:
android:scrollbars = "vertical"
Hope this helped.
Upvotes: 27