5

Ich brauche einen EditText, der Höhe mein Fenster ausfüllt. Ich verwende diese:Android - EditText multiline gezwungen, Höhe zu füllen

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:fillViewport="true" > 

<EditText 
    android:id="@+id/text_editor" 
    android:layout_width="match_parent" 
    android:layout_height="fill_parent" 
    android:background="#ff0000" 
    android:gravity="top|left" 
    android:inputType="textMultiLine" 
    android:textColor="@android:color/white" /> 

</ScrollView> 

Aber alles, was ich bekommen, ist eine eine Zeile EditText, die länger sein wird und scrollbaren sobald ich etwas auf mehrzeilige Eingabe der Return-Taste schreiben. Ich weiß, dass ich die Zeilennummer einstellen kann, aber in diesem Fall sollte es auf verschiedenen Geräten funktionieren und jedes Gerät (denke ich) hat unterschiedliche Anzahl von Zeilen.

Wie kann ich es zwingen, das Gerät in der Höhe zu füllen?

Irgendwelche Tipps?

Antwort

2

Versuchen (ohne Scroll) zu verwenden:

<EditText 
    android:id="@+id/text_editor" 
    android:layout_width="match_parent" 
    android:layout_height="fill_parent" 
    android:background="#ff0000" 
    android:gravity="top|left" 
    android:textColor="@android:color/white" /> 
+0

Die Verwendung ohne scrollview half. –

0

Wenn Sie es im Code hinzufügen können, würde es so aussehen:

EditText et = new EditText(this); 
l.addView(et, new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, 100)); 

wo die 100 bedeutet es 100dp der Breite haben wird. Die l ist die Layout Sie haben (ScrollView in Ihrem Fall), die Sie mit R.layout.name_of_the_scroll_view erhalten können.

Ich bin mir nicht sicher, aber versuchen Sie, die Eigenschaft der Höhe der setzen.

0
RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" > 

    <EditText 
     android:id="@+id/editText1" 
     android:scrollbars="vertical" <----------- 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentRight="true" 
     android:layout_alignParentTop="true" 
     android:gravity="top|left" 
     android:ems="10" 
     android:text=" example text" /> 

</RelativeLayout> 

in Java-Code diesen Satz .....

ed1 = (EditText) findViewById(R.id.editText1); 
ed1.setMovementMethod(new ScrollingMovementMethod()); <-------- 

in allen Gerät arbeiten.

Hoffe, das wird Ihnen helfen.

2

Versuchen Sie dies für EditText, ich hatte das gleiche, das wird funktionieren.

<EditText 
android:id="@+id/text_editor" 
android:layout_width="match_parent" 
**android:layout_height="wrap_content"** 
android:background="#ff0000" 
android:gravity="top|left" 
android:inputType="textMultiLine" 
android:textColor="@android:color/white" /> 

und Sie können auch diese eine genau festlegen verwenden, wie viele Zeilen, die Sie benötigen,

android:lines="number of Lines" 
0

My-Code ist es Arbeit für mich.

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:background="#ffffff" 
android:orientation="vertical" > 

<ImageView 
    android:id="@+id/imageView20" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:contentDescription="@string/img_desc1" 
    android:src="@drawable/num74_head_payakorn" /> 

<TableRow 
    android:id="@+id/tableRow1" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" > 

    <EditText 
     android:id="@+id/edtPayakorn" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:textSize="22sp" 
     android:clickable="false" 
     android:cursorVisible="false" 
     android:editable="false" 
     android:enabled="true" 
     android:focusable="false" 
     android:focusableInTouchMode="false" 
     android:gravity="top|left" 
     android:scrollbars="vertical" 
     android:inputType="textMultiLine" /> 
    </TableRow> 
</LinearLayout>