2016-05-06 16 views
0

Meine Textansicht Inhalt sollte dynamisch eingestellt werden. Abhängig von der Textgröße muss es mehrzeilig sein und entsprechend dem tatsächlichen Inhalt angepasst werden. Wenn der Textinhalt null ist, dann sollte die Text-Ansicht nicht sichtbar seineAndroid: Textansicht dynamisch zeigen den Text in Multiline abhängig von der Textgröße

Ich habe versucht folgende

  <TextView android:id="@+id/xyz" 
        android:layout_width="wrap_content" 
        android:layout_height="match_parent" 
        android:layout_marginTop="15dp" 
        android:textSize="21sp" 
        android:textColor="@color/white"       
        android:minLines="1" 
        android:maxLines="10"/> 
      </LinearLayout> 


tvview = (TextView)findViewById(R.id.xyz); 
String tvtext = d.getText();//will get the content here 
if (tvtext == null && tvtext .isEmpty()) { 
    tvview.setVisibility(View.GONE); 

} else { 
    tvview.setVisibility(View.VISIBLE); 

    tvview.setText(tvtext); 
} 

Ist der richtige Ansatz ?. Wie kann ich entscheiden, wie viele Zeilen die Textansicht anzeigen soll, abhängig vom tvtext-Wert. Ich habe nur minimale, maximale Zeilen in der XML-Datei erwähnt. Wird Android-Umgebung dafür sorgen?

Bitte helfen Sie es zu erreichen.

+0

minLines und maxLines begrenzen die Anzahl der Zeilen, ansonsten wird nur die Anzahl der Zeilen verwendet. – cyroxis

Antwort

0

Sie verkomplizieren dies. Sie müssen die Anzahl der Zeilen nicht angeben. Geben Sie die gewünschte Breite an (oft match_parent) und legen Sie die Höhe auf wrap_content fest.

<TextView android:id="@+id/xyz" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_marginTop="15dp" 
    android:textSize="21sp" 
    android:textColor="@color/white"/> 

tvview = (TextView)findViewById(R.id.xyz); 
textView.setText("some text"); 

Wenn mindestens einer Ihrer Dimensionen ist warp_content die Haut Pflege für Sie automatisch genommen wird.

+0

Aber wird Textview den Text in Multilinien in diesem Fall zeigen? – user3819593

+0

Ich sehe einige Beispiele, wo \ n dem Text hinzugefügt werden sollte, um in anderer Zeile angezeigt zu werden. In meinem Fall ist der Text dynamisch. Wie kann ich '\ n' in regelmäßigen Abständen einfügen? Bitte antworte mir – user3819593

Verwandte Themen