2016-04-15 11 views
6

私はいくつかのボタンの質問を読んだことがありますが、私がもっと探していたような解決策はありませんでした。私はレイアウトの特定の部分だけを表示したいと思います。ユーザーが[詳細を読む]ボタンを押すと、残りのレイアウトがドロップダウンアニメーションで表示されます。この種の何か: enter image description here続きを読むandroidで

enter image description here

+0

可能な複製(http://stackoverflow.com/questions/19675331/add-view-more-at-the -end-of-textview-after-3-lines) –

+0

http://stackoverflow.com/questions/19675331/add-view-more-at-the-end-of-textview-after-3-3の複製が可能です。行 –

+0

はい、私はそれらから満足のいく解決策を得ていませんでした.. @Sushantの答えは私が探していたものです – mrnobody

答えて

1

私はあなたにuが望む正確なコードを与えるカントが、私はあなたの条件を満たしているサンプルコードを与えることによってuのを助けることができ、ここで

私だけ説明していますより多くの/より少ないボタン機能がどのように機能しているか。最初にactivity_main.xmlファイルの を以下のコードに貼り付けてください。

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

    } 
    }); 

} 

} 

、最終的には 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> 

あなたstring.xmlをファイルに変更し、それは出力の下にあなたを与えるだろう、あなたのプロジェクトを実行します。 [3行の後のTextViewの最後に "もっと見る" を追加します]の

normal view Expanded view

関連する問題