点击列表项以显示更多信息。

5

我不确定这个应该怎么称呼,所以我做了一张图片。

我想展示一个用户列表,当有人点击其中一个用户时,下面应该显示一些详细信息。再次点击后,它应该隐藏起来。最好带有一些滑动动画。它不应该覆盖其余的列表,因此其他内容也必须向下移动。

我希望你能理解我的意思。

有人可以告诉我应该搜索什么或者有没有例子吗?

enter image description here


1
你可以使用可扩展的线性布局库来实现,或者如果你不关心动画效果,可以使用VISIBLE/GONE来隐藏/显示视图。 - Vucko
1
你可以使用 ExpandableListView - Let'sRefactor
1
使用FlipView和完整的示例来检查我的答案。 - Khaled Lela
5个回答

2

1
这可以通过将详细布局的可见性设置为GONE来实现,当条目被点击时切换为VISIBLE,依此类推。
对于动画,在您的viewholder布局XML文件中。
<LinearLayout android:id="@+id/container"
    android:animateLayoutChanges="true"
    ...
/>

1
使用FlipView
dependencies {
    // other dependancies 
    implementation 'eu.davidea:flipview:1.1.3'

}

activity_main.xml

  <eu.davidea.flipview.FlipView
        android:id="@+id/flip_layout"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        app:animateDesignLayoutOnly="true"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <android.support.v7.widget.RecyclerView
            android:id="@+id/recycler_view"
            android:layout_width="match_parent"
            android:layout_height="match_parent"/>

        <!--You use ListView-->
        <!--<ListView-->
        <!--android:id="@+id/list_view"-->
        <!--android:layout_width="match_parent"-->
        <!--android:layout_height="wrap_content"/>-->

        <fragment
            android:id="@+id/fragment_item_detail"
            android:name="com.lelasoft.recyclerviewwithitemdetail.ItemDetailsFragment"
            android:layout_width="match_parent"
            android:layout_height="match_parent"/>
    </eu.davidea.flipview.FlipView>

翻译:Flip Logic
解释:无需解释,保留HTML标记。
@Override
public void onFlipAction(String item) {
    if (flipView.isFlipped())
        flipView.flip(false);
    else {
        flipView.flip(true);
        itemDetailsFragment.updateItemDetails(item);
    }
}

@Override
public void onBackPressed() {
    if (flipView.isFlipped())
        flipView.flip(false);
    else
        super.onBackPressed();
}

Github上查看完整示例


1

1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接