Android, как установить ScrollBar в Edittext?
Я новичок в Android, я хочу ScrollText в Edittext, а также показ полосы прокрутки в углу. Я прокручиваю текст с помощью
questionEntry.setScroller(new Scroller(myContext));
questionEntry.setMaxLines(1);
questionEntry.setVerticalScrollBarEnabled(true);
questionEntry.setMovementMethod(new ScrollingMovementMethod());
scr0lling из текстовых произведений, но ScrollBar не получает Visible, может ли кто-нибудь дать мне Sugesstion?
Ответы
Ответ 1
Это может вам помочь.
<EditText android:id="@+id/edt_task_disc" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:gravity="top"
android:background="@drawable/text_aerea"
android:hint="Task Discription"
android:textSize="15sp" android:paddingLeft="5dp"
android:maxHeight="35dp"
android:scrollbars="vertical"
/>
Пожалуйста, добавьте android:scrollbars="vertical"
в свой код редактирования текста xml, и он будет работать нормально.
Ответ 2
Только образец
В вашем файле 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:layout_weight="9"
android:ems="10"
android:gravity="top"
android:imeOptions="flagNoExtractUi"
android:minLines="10"
android:scrollHorizontally="false"
android:scrollbarAlwaysDrawVerticalTrack="true"
android:scrollbarStyle="insideInset"
android:scrollbars="vertical"
android:overScrollMode="always"
android:inputType="textCapSentences">
</EditText>
Ответ 3
Я тоже проверил варианты, но я думаю,
android:scrollbars="vertical"
это лучше, или вы можете сделать это путем определения многострочного
android:inputType="textMultiLine"
или вы также можете решить эту проблему
edittext.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View view, MotionEvent motionEvent) {
view.getParent().requestDisallowInterceptTouchEvent(true);
switch (motionEvent.getAction() & MotionEvent.ACTION_MASK){
case MotionEvent.ACTION_UP:
view.getParent().requestDisallowInterceptTouchEvent(false);
break;
}
return false;
}
});