InboxLayout 多重listview 动态显示 手势操作

本文介绍如何在应用中实现类似Google Inbox的上下拉手势返回功能。通过特定布局及组件绑定,可轻松添加流畅的手势操作体验。适用于底部为ScrollView顶部为ListView或全屏ScrollView的应用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

模仿Google Inbox邮箱的上下拉返回效果

让你的app加入真正方便的手势操作

效果图:
这里写图片描述

step 1

实现类似的布局, 具体可参考demo

<FrameLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <com.zzt.inbox.widget.InboxScrollView
        android:scrollbars="none"
        android:id="@+id/scroll"
        android:layout_width="match_parent"
        android:layout_height="match_parent">
        <LinearLayout
            android:orientation="vertical"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">
            <!--在这里布局主界面要显示的内容-->
        </LinearLayout>
    </com.zzt.inbox.widget.InboxScrollView>

    <com.zzt.inbox.widget.InboxLayoutListView
        android:id="@+id/inboxlayout"
        android:visibility="invisible"
        android:layout_width="match_parent"
        android:layout_height="match_parent">
    </com.zzt.inbox.widget.InboxLayoutListView>
</FrameLayout>

step 2

final InboxScrollView inboxScrollView = (InboxScrollView)findViewById(R.id.scroll);
inboxLayout = (InboxLayout)findViewById(R.id.inboxlayout);             
inboxLayout.seBackgroundScrollView(inboxScrollView); //将inboxScrollView 与 inboxlayout绑定,由inboxlayout带动inboxScrollView滚动

step 3

final LinearLayout dingdan = (LinearLayout)findViewById(R.id.ding_dan);
dingdan.setOnClickListener(new View.OnClickListener() {
  @Override
  public void onClick(View v) {
    inboxLayout.openWithAnim(dingdan);//给inboxLayout传入open时需要隐藏的view
  }
});

Last

InboxLayout目前支持底部为scrollview 顶部为listview和scrollview的情况,适用于大部分场景

声明:本demo来源于 github并非原创 此贴为我个人使用过demo的收藏贴 欢迎大家查看我收藏的其他demo

demo下载地址:http://download.youkuaiyun.com/detail/u012372351/9438730
github地址:https://github.com/zhaozhentao/InboxLayout

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值