2011-12-29 10 views
14

Come visualizzare un TextArea per il mio progetto Android? Da xml, l'unica scelta è TextField, multi-linea. Ma questo è modificabile. Ho bisogno di un TextArea che è solo per la visualizzazione di messaggi/testo non può essere modificato/inserito dall'utente.Come creare un TextArea in Android

+0

Hai bisogno di qualcosa in stile come il campo EditText o TextView? – Robert

+0

Usa la visualizzazione del testo per questo scopo è la migliore adatta al tuo caso. – Dharmendra

+0

il problema di vista testo trovo che mostra ciò che mai è del mio background che ho avuto immagini rendendo difficile la lettura –

risposta

7

sua davvero semplici, scrivere questo codice in XML:

<EditText 
    android:id="@+id/fname" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:hint="First Name" 
/> 
6

Usa TextView all'interno di un ScrollView per visualizzare i messaggi con tutte le linee No.of. L'utente non può modificare il testo in questa vista come in EditText.

Penso che questo sia un bene per le vostre esigenze. Provalo una volta.

È possibile cambiare il colore predefinito e la dimensione del testo in file XML solo se si desidera il montaggio loro come di seguito:

<TextView 
    android:id="@+id/tv" 
    android:layout_width="fill_parent" 
    android:layout_height="100px" 
    android:textColor="#f00" 
    android:textSize="25px" 
    android:typeface="serif" 
    android:textStyle="italic"/> 

o se si desidera modificare dinamicamente ogni volta che si desidera utilizzare, come di seguito:

TextView textarea = (TextView)findViewById(R.id.tv); // tv is id in XML file for TextView 
textarea.setTextSize(20); 
textarea.setTextColor(Color.rgb(0xff, 0, 0)); 
textarea.setTypeface(Typeface.SERIF, Typeface.ITALIC); 
+0

fammi provare che vedere come va –

+0

Sì, è molto buono per il mio requisito. Ora come faccio a cambiare il suo carattere/dimensione/colore? Il testo predefinito sembra grigio sbiadito, la visibilità è scarsa. –

+0

in dove dovrei mettere textarea.setTextSize (20); , non sembra che sia per xml. –

12

Usa TextView all'interno di un ScrollView

<ScrollView 
    android:id="@+id/ScrollView01" 
    android:layout_width="wrap_content" 
    android:layout_height="150dip"> 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content"/> 

</ScrollView> 
+0

Come inserisco una descrizione multi-allineata in questo? –

9

Prova questo:

<EditText 
     android:id="@+id/edit_text" 
     android:layout_width="match_parent" 
     android:layout_height="150dp" 
     android:inputType="text|textMultiLine" 
     android:gravity="top"/> 
+0

La lingua comune è l'inglese. – Keelan

0

questa breve risposta potrebbe aiutare qualcuno che sta cercando di fare. aggiungere questo semplice codice nel codice

<EditText 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:editable="false" 
    android:focusable="false" 
    android:singleLine="true" /> 
1

Definizione di un Mulitline EditText campo Android avviene tramite l'InputType =”textMultiline”. Sfortunatamente il testo sembra stranamente allineato. Per risolverlo usa anche l'attributo gravità = "sinistra | cima".

<EditText 
    android:id="@+id/editText1" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:ems="10" 
    android:gravity="left|top" 
    android:inputType="textMultiLine" > 

    <requestFocus /> 

controllo questo vogella blog

0

E se avete problemi con i colori, non si preoccupi. Basta impostare il colore di sfondo in EditText:

<EditText 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:inputType="text" 
    android:textColor="@color/edtTextColor" 
    android:background="@color/bgEdtColor" 
    /> 
1

Se non si desidera consentire all'utente di inserire il testo TextView è l'opzione migliore qui. Qualsiasi modo per aggiungere anche EditText per questo scopo. ecco un codice di esempio per questo.

Questo mostrerà automaticamente la barra di scorrimento se c'è più testo rispetto alle righe specificate.

<EditText 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:inputType="textMultiLine" 
    android:lines="8" 
    android:maxLines="10" 
    android:minLines="6" 
    android:scrollbars="vertical" /> 

Edit: Aggiunta di attributi di seguito per textView renderebbe un textArea che non sarebbe modificabile.

android:lines="8" 
android:maxLines="10" 
android:minLines="6" // optional 
Problemi correlati