Java 文本视图:淡出+;阅读更多-单击展开

Java 文本视图:淡出+;阅读更多-单击展开,java,android,kotlin,textview,Java,Android,Kotlin,Textview,我想在我的应用程序中固定行数后淡出长文本,就像他们在本css教程中所做的那样: 但我不知道谷歌应该做什么,也不知道如何实现这样的行为。有人能帮我一些意见吗 <FrameLayout android:id="@+id/event_text_container" android:layout_width="match_parent" android:layout_height="wrap_content" >

我想在我的应用程序中固定行数后淡出长文本,就像他们在本css教程中所做的那样:

但我不知道谷歌应该做什么,也不知道如何实现这样的行为。有人能帮我一些意见吗

    <FrameLayout
        android:id="@+id/event_text_container"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        >
    <TextView
        android:id="@+id/text"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:padding="28dp"
        android:maxLines="15"
        />

        <FrameLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="@drawable/overlay_textview" />
    </FrameLayout>

设置TextView的maxLines属性(或将高度设置为某个具体值),在其上方放置一个渐变视图和一个按钮。手柄按钮和渐变可见性形成您的代码

button.setOnClickListener {
    button.visibility = View.GONE
    gradientView.visibility = View.GONE
    textView.layoutParams.height = ViewGroup.LayoutParams.WRAP_CONTENT
    textView.requestLayout()
}

mh,那么如何单击按钮展开TextView?您可以通过编程方式设置TextView的属性。由于无法在注释中正确设置格式,我在原始答案中添加了一个代码示例。请看我的编辑,我使用FrameLayout解决了这个问题,问题是,当文本变短时,仍然会显示覆盖。另一个问题是,当我使用文本视图的固定值时,例如150dp,覆盖甚至不会影响文本视图,因此我必须使用文本视图的“匹配父对象”