我正在使用某些预定义大小的EditText,但是当用户输入更多文本然后放入文本框时,他们无法通过触摸滚动文本。滚动确实适用于轨迹球。
我该怎么做才能解决这个问题?
答案 0 :(得分:24)
如果您希望文本水平滚动,请在EditText XML标记中定义:
android:scrollHorizontally="true"
如果您想要垂直滚动,请在EditText XML标记中定义:
android:scrollbars = "vertical"
希望这会有所帮助。
答案 1 :(得分:14)
进行如下更改以在EditText中获取滚动条
questionEntry.setScroller(new Scroller(myContext));
questionEntry.setMaxLines(1);
questionEntry.setVerticalScrollBarEnabled(true);
questionEntry.setMovementMethod(new ScrollingMovementMethod());
How to make edittext in Android scrollable?
如果您认为我的回复对您有帮助,不要忘记投票
由于 迪帕克
答案 2 :(得分:8)
在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;
}
});
在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>
答案 3 :(得分:0)
如果父级是NestedScrollView或ScrollView,则一种在edittext中进行可滚动文本的简单方法
XML代码
(
对Kotlin使用以下代码
android:gravity="top"
android:inputType="text|textMultiLine"
android:lines="5"
答案 4 :(得分:-1)
questionEntry.setMaxLines(1);