Android 分享界面,使用BottomSheetDialog(可上拉到顶部,可下拉消失,仿知乎、掘金等)

来源:互联网 发布:qq空间人气软件 编辑:程序博客网 时间:2024/05/16 07:31

发现掘金和知乎的分享界面效果挺好的,比自己的用的AlertDialog和 PopupWindow的效果好太多就像学习一下,如图是掘金的文章分享界面
掘金文章分享界面
其实这种效果是一个特殊的Dialog—-BottomSheetDialog
下面是我做的案例效果图
Demo效果图

  • 点击方法
public void showDialog(View view) {        View contentView = LayoutInflater.from(this)                .inflate(R.layout.list, null);        RecyclerView recyclerView= (RecyclerView) contentView.findViewById(R.id.recycler);        recyclerView.setItemAnimator(new DefaultItemAnimator());        recyclerView.setLayoutManager(new LinearLayoutManager(this, LinearLayoutManager.VERTICAL, false));        Adapter adapter = new Adapter();        recyclerView.setAdapter(adapter);        final BottomSheetDialog dialog = new BottomSheetDialog(this);        dialog.setContentView(contentView);        dialog.show();        adapter.setOnItemClickListener((position, text) -> {            Toast.makeText(mContext, text, Toast.LENGTH_SHORT).show();            dialog.dismiss();        });    }

声明BottomSheetDialog后把View配置上,view的xml中就一个textView和一个RecyclerView,在知乎的这个界面是有广告位的,看起来也是毫无违和感。
知乎文章分享界面

用法很简单,只不过一开始看到这个界面还以为是自定义的Dialog,没想到是自带的控件,效果真的很赞,当然也可以写成网格布局,如果内容较少的话,是不会上拉到顶部的。

阅读全文
0 0
原创粉丝点击