583 Stimmen

Erlauben mehrzeilige in EditText Ansicht in Android?

Wie man Mehrzeiligkeit in Android's zulässt EditText Ansicht?

11voto

Chathura Jayanath Punkte 609

Versuchen Sie dies, fügen Sie diese Zeilen in Ihre Textbearbeitungsansicht ein, ich werde meine hinzufügen. stellen Sie sicher, dass Sie es verstehen

android:overScrollMode="always"
android:scrollbarStyle="insideInset"
android:scrollbars="vertical"

<EditText
    android:inputType="textMultiLine"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/editText_newprom_description"
    android:padding="10dp"
    android:lines="5"
    android:overScrollMode="always"
    android:scrollbarStyle="insideInset"
    android:minLines="5"
    android:gravity="top|left"
    android:scrollbars="vertical"
    android:layout_marginBottom="20dp"/>

und auf Ihre Java-Klasse machen auf click listner zu diesem Text bearbeiten wie folgt, ich werde meine hinzufügen, chane Namen nach Ihrem.

EditText description;
description = (EditText)findViewById(R.id.editText_newprom_description);

description.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;
            }

        });

Das funktioniert bei mir gut

7voto

sourav pandit Punkte 7670

Wenn jemand die AppCompatEditText dann müssen Sie inputType="textMultiLine" Hier ist der Code, den Sie kopieren können


   <androidx.appcompat.widget.AppCompatEditText
        android:padding="@dimen/_8sdp"
        android:id="@+id/etNote"
        android:minLines="6"
        android:singleLine="false"
        android:lines="8"
        android:scrollbars="vertical"
        android:background="@drawable/rounded_border"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginStart="@dimen/_25sdp"
        android:layout_marginTop="32dp"
        android:layout_marginEnd="@dimen/_25sdp"
        android:autofillHints=""

        android:gravity="start|top"
        android:inputType="textMultiLine"
         />

für den Hintergrund

   <?xml version="1.0" encoding="utf-8"?>
   <shape android:shape="rectangle" 
    xmlns:android="http://schemas.android.com/apk/res/android">
   <corners android:radius="@dimen/_5sdp"/>
   <stroke android:width="1dp" android:color="#C8C8C8"/>
   </shape>

6voto

Yıldırım Punkte 697
android:inputType="textMultiLine"

Diese Codezeile funktioniert bei mir. Fügen Sie diesen Code Sie edittext in Ihrer Xml-Datei.

6voto

Dinith Punkte 609

Fügen Sie einfach Folgendes hinzu android:inputType="textMultiLine" in der XML-Datei auf dem entsprechenden Feld.

5voto

Cynichniy Bandera Punkte 5895

All das ist zwar schön, funktioniert aber nicht, wenn Sie Ihren Text in der oberen Bildlaufansicht haben :) Das vielleicht häufigste Beispiel ist die Ansicht "Einstellungen", die so viele Elemente hat, dass sie über den sichtbaren Bereich hinausgehen. In diesem Fall legt man sie alle in die Scroll-Ansicht, um die Einstellungen scrollbar zu machen. Falls Sie mehrzeiligen scrollbaren Text in Ihren Einstellungen benötigen, wird das Scrollen nicht funktionieren.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X