悬浮框

作者: 初昇陌 | 来源:发表于2019-03-19 19:48 被阅读0次

1.在项目下的build.gradle中

allprojects {
    repositories {
        google()
        jcenter()
        maven { url 'https://jitpack.io' }
    }
}

2.添加依赖

implementation 'com.android.support:design:27.1.1'
implementation 'com.github.qdxxxx:StickyHeaderDecoration:1.0.1'

3.设置

private void Data() {
        mCars = new ArrayList<>();
        mCars.add(new Car("奥迪", "A"));
        mCars.add(new Car("阿尔法罗密欧", "A"));
        mCars.add(new Car("阿斯顿马丁", "A"));
        mCars.add(new Car("ALPINA", "A"));
        mCars.add(new Car("安凯客车", "A"));
        mCars.add(new Car("本田", "B"));
        mCars.add(new Car("别克", "B"));
        mCars.add(new Car("奔驰", "B"));
        mCars.add(new Car("宝马", "B"));
        mCars.add(new Car("保时捷", "B"));
        mCars.add(new Car("比亚迪", "B"));
        mCars.add(new Car("北京", "B"));
        mCars.add(new Car("宾利", "B"));
        mCars.add(new Car("巴博斯", "B"));
        mCars.add(new Car("布加迪威龙", "B"));
        mCars.add(new Car("长安", "C"));
        mCars.add(new Car("长城", "C"));
        mCars.add(new Car("大众", "D"));
        mCars.add(new Car("东南", "D"));
        mCars.add(new Car("东风", "D"));
        mCars.add(new Car("DS", "D"));
        mCars.add(new Car("道奇", "D"));
        mCars.add(new Car("东风小康", "D"));
    }

private void initView() {
//        final LayoutInflater inflater = LayoutInflater.from(this);
        mRlv = (RecyclerView) findViewById(R.id.rlv);
        mRlv.setLayoutManager(new LinearLayoutManager(this));
        RlvAdapter rlvAdapter = new RlvAdapter(mCars);
        //返回头布局的内容
        final NormalDecoration decoration = new NormalDecoration() {
            @Override
            public String getHeaderName(int i) {
                return mCars.get(i).headerName;
            }
        };
        //自定义头布局,可不设置
//        decoration.setOnDecorationHeadDraw(new NormalDecoration.OnDecorationHeadDraw() {
//            @Override
//            public View getHeaderView(final int i) {
//                View inflate = inflater.inflate(R.layout.item_header, null);
//                TextView tv = inflate.findViewById(R.id.tv);
//               tv.setText(mCars.get(i).headerName);
//                return inflate;
//            }
//        });
        mRlv.addItemDecoration(decoration);
        //头布局的点击事件
        decoration.setOnHeaderClickListener(new NormalDecoration.OnHeaderClickListener() {
            @Override
            public void headerClick(int i) {
                Toast.makeText(MainActivity.this, mCars.get(i).headerName, Toast.LENGTH_SHORT).show();
                startActivity(new Intent(MainActivity.this,FlowActivity.class));
            }
        });
        mRlv.setAdapter(rlvAdapter);
    }

相关文章

  • 悬浮框

    使用悬浮框 悬浮窗监听器 悬浮窗管理器

  • 悬浮框

    1.在项目下的build.gradle中 2.添加依赖 3.设置

  • html td鼠标进入显示悬浮框

    鼠标移动到指定框中,显示悬浮框展示指定内容 显示悬浮框的内容 对应的js显示标题内容 function info(...

  • echarts地图下钻右击添加返回上一级

    1.首先在页面中新建一个替代默认右击的悬浮框 2.屏蔽自身的右击事件 3.定位右击悬浮框的位置 3.给悬浮框添加单击事件

  • selenium+python 定位悬浮元素

    背景 在web中,悬浮框的特点是当检测鼠标进入时,发生弹出悬浮框事件,当鼠标退出时,悬浮框在页面上消失。此时,若依...

  • Service创建悬浮框

    首先,介绍下作用,及功能, 利用service创建悬浮框,然后这个悬浮框不能影响界面其他的按键,所以需要拖动,然后...

  • Android 悬浮框

    Android 悬浮框在IM应用或者音视频应用中经常会有用到,这也是我第二次开发这悬浮框这个功能了,为了避免以后再...

  • iOS 悬浮框

    悬浮按钮,先上图 很长时间没写了,手法生疏,直接上代码吧 SheetControlView.h SheetCont...

  • 仿百度输入框悬浮标签效果实现

    输入框悬浮标签 ** 大家可自行改改

  • Android PopupWindow 和 Dialog Act

    PopupWindow(悬浮框) Android 中的 PopupWindow[https://developer...

网友评论

      本文标题:悬浮框

      本文链接:https://www.haomeiwen.com/subject/bponmqtx.html