2016-04-15 17 views
6

Ho letto qualche domanda in più sui tasti, ma non ho trovato una soluzione che stavo cercando di più. Voglio visualizzare solo alcune parti del layout e solo quando l'utente preme il pulsante Leggi altro mostra il resto del layout con l'animazione a discesa. Qualcosa del genere: enter image description hereLeggi altro pulsante in Android

enter image description here

+0

Eventuali duplicati di [Aggiungi "View More" alla fine del TextView dopo 3 linee] (http://stackoverflow.com/questions/19675331/add-view-more-at-the -end-of-textview-after-3-lines) –

+0

può essere duplicato di http://stackoverflow.com/questions/19675331/add-view-more-at-the-end-of-textview-after-3- linee –

+0

sì ma non ho ottenuto soluzioni soddisfacenti da loro .. @ La risposta di Shanthant è esattamente quello che stavo cercando – mrnobody

risposta

1

non posso darvi il codice esatto u desideri, ma posso aiutare u dando un esempio di codice che soddisfa le vostre esigenze,

Qui sto solo descrivere che funzionano più/meno le funzionalità dei pulsanti. prima di tutto nel file activity_main.xml incolla sotto il codice.

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

    <RelativeLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" > 

     <TextView 
      android:id="@+id/description_text" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:maxLines="5" 
      android:text="@string/desc_content" /> 

     <ImageButton 
      android:id="@+id/show" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentRight="true" 
      android:layout_below="@+id/description_text" 
      android:background="@drawable/arrow_down" 
      android:clickable="true" /> 

     <View 
      android:id="@+id/view1" 
      android:layout_width="wrap_content" 
      android:layout_height="2dp" 
      android:layout_below="@+id/description_text" 
      android:layout_marginTop="5dp" 
      android:layout_toLeftOf="@+id/show" 
      android:background="#000" /> 

     <ImageButton 
      android:id="@+id/hide" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentRight="true" 
      android:layout_below="@+id/description_text" 
      android:background="@drawable/arrow_up" 
      android:clickable="true" 
      android:visibility="invisible" /> 
    </RelativeLayout> 

</ScrollView> 

MainActivity.java

package com.example.expand.textview; 

import android.app.Activity; 
import android.os.Bundle; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.widget.ImageButton; 
import android.widget.TextView; 

public class MainActivity extends Activity { 
TextView descText; 
ImageButton show, hide; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    descText = (TextView) findViewById(R.id.description_text); 
    show = (ImageButton) findViewById(R.id.show); 
    show.setOnClickListener(new OnClickListener() { 

    @Override 
    public void onClick(View v) { 
    System.out.println("Show button"); 
    show.setVisibility(View.INVISIBLE); 
    hide.setVisibility(View.VISIBLE); 
    descText.setMaxLines(Integer.MAX_VALUE); 

    } 
    }); 
    hide = (ImageButton) findViewById(R.id.hide); 
    hide.setOnClickListener(new OnClickListener() { 

    @Override 
    public void onClick(View v) { 
    System.out.println("Hide button"); 
    hide.setVisibility(View.INVISIBLE); 
    show.setVisibility(View.VISIBLE); 
    descText.setMaxLines(5); 

    } 
    }); 

} 

} 

e, infine, cambiare il vostro file di string.xml string.xml

<resources> 

    <string name="app_name">Expand TextView</string> 
    <string name="hello_world">Hello world!</string> 
    <string name="menu_settings">Settings</string> 
    <string name="title_activity_main">MainActivity</string> 
    <string name="desc_content">  Android powers hundreds of millions of mobile devices in more than 190 countries around the world. It\'s the largest installed base of any mobile platform and growing fast—every day another million users power up their Android devices for the first time and start looking for apps, games, and other digital content. 

Android gives you a world-class platform for creating apps and games for Android users everywhere, as well as an open marketplace for distributing to them instantly. 
</string> 

</resources> 

ed eseguire il progetto Vi darà seguito uscita.

normal view Expanded view