2016-12-13 4 views
2

私は何度も調査していますが、適切な答えを見つけることができませんでした。TextViewの最後の数行をフェードアウトします

私も自分でこれを達成することはできませんので、私は特定のmaxHeightありTextViewを、持っている私が作成していInfoWindowDialogビューを持っている

私を助けてください。

<RelativeLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:paddingBottom="@dimen/activity_vertical_margin" 
    android:paddingLeft="@dimen/activity_horizontal_margin" 
    android:paddingRight="@dimen/activity_horizontal_margin" 
    android:paddingTop="@dimen/activity_vertical_margin"> 

     <TextView 
      android:id="@+id/txt_desc" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="LONG_TEXT_WHICH_HAS_A_FEW_LINES..." 
      android:maxHeight="50dp"/> 

</RelativeLayout> 

そして私は、この例の最後の数行に似た何かを達成したい:私は置くことによりFade bottom of a textview android

を述べた解決策を試してみました

enter image description here

enter image description here

android:requiresFadingEdge="vertical "およびandroid:fadingEdgeLength="32dp"および結果がなかった。

+0

なぜ透明でテキストをより多く、背景にボタンを使用しないのですか?それはあなたが望むものを達成するのに役立ちます。 – Rahil2952

+0

私は結局のところボタンの上に – Firecat

+0

ボタンがないことを求めていたので、 "more"ラベルが確実に上に... – njzk2

答えて

2

これにはいくつか解決策があります。 UI要素を追加するのが最も簡単です。ビューの一番下に透明度のあるオーバーレイグラフィックを追加します。 50%。これはあなたが求めているものを達成するでしょう。考慮すべき

その他のオプション:

1)、テキストの最後の行を追跡し、それを分割し、それに50%の透明度を追加します。

2)テキストの最後の行を追跡し、分割し、色を別の灰色に変更します。これは透明感を与えます

3)スクロールビューを使用している場合は、フェードエッジ機能があります。

<ScrollView android:requiresFadingEdge="vertical"> 

とあなたのコードでは、次の

ScrollView scroll = findById(); scroll.setFadingEdgeLength(150); 

したり、XMLの使用android:fadingEdgeLength="150dp"で行うことができます。乾杯!

関連する問題