2016-04-15 24 views
6

Birkaç tane daha fazla düğme sorusu inceledim ama daha fazla aradığım bir çözüm bulamadım. Yalnızca düzenin belirli bir bölümünü görüntülemek istiyorum ve sadece kullanıcı Read more düğmesine bastığında, aşağı açılan animasyon ile düzenin geri kalanını gösterecektir. Bu tür bir şey: enter image description hereDaha fazla oku android'de daha fazla buton

enter image description here

+0

Olası yinelenen (http://stackoverflow.com/questions/19675331/add-view-more-at-the -end-of-of-of-of-of-of-çizgiler-sonrası-çizgiler) –

+0

http://stackoverflow.com/questions/19675331/add-view-more-at-the-end-of-textview-after-3- yinelenen olabilir satırlar –

+0

evet ama onlardan tatmin edici çözümler alamadım .. @Sushant'ın cevabı tam olarak aradığım şey – mrnobody

cevap

1

Sana u istediği tam kodunu veremem, ama ben senin ihtiyacını karşılayan bir örnek kod vererek u yardımcı olabilir, İşte

Ben sadece tarif ediyorum Daha fazla/daha az düğme işlevselliği nasıl çalışır. öncelikle activity_main.xml dosyanızda kodun altına yapıştırın.

<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); 

    } 
    }); 

} 

} 

ve son olarak 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> 

sizin string.xml dosya değiştirip Bu çıkış aşağıda verecek sizin Projesi çalıştırın. [3 satırdan sonra textview sonundaki "Daha Fazla" Add] arasında

normal view Expanded view