Android自定義控件抽屜組件

一種抽屜式的ListView動畫,基本原理是通過ListView集成的

效果圖:

1521507576187mzlist.gif

基本思路:使用LayoutParams改變大小

詳情請看:http://www.itdecent.cn/p/77a4ab643b8b

代碼使用方法:

    xhList = findViewById(R.id.xhList);

        for (int i = 0; i < 50; i++) {
            arrayList.add(i + "");
        }

        xhList.setXHAdapter(new XHBaseAdapter<String>(arrayList) {
            @Override
            public XHViewHolder getXHViewHolder() {
                View inflate = View.inflate(MainActivity.this, R.layout.test_2, null);
                xhLineChar = inflate.findViewById(R.id.xhchar);
                xhLineChar.setMaxTable(10.5f);
                xhLineChar.setMinTable(-8.5f);

                ArrayList<XHData> xhData = new ArrayList<>();

        /*xhData.add(new XHData(20,0));
        xhData.add(new XHData(50,80));
        xhData.add(new XHData(60,30));
        xhData.add(new XHData(80,26));
        xhData.add(new XHData(17,26));
        xhData.add(new XHData(80,65));
        xhData.add(new XHData(26,74));
        xhData.add(new XHData(20,86));*/


                xhData.add(new XHData(true,5.6f,"2018/12-12"));
                xhData.add(new XHData(true,9.5f,"2018/12-12"));
                xhData.add(new XHData(true,8.5f,"2018/12-12"));
                xhData.add(new XHData(true,10.5f,"2018/12-12"));
                xhData.add(new XHData(true,7.5f,"2018/12-12"));
                xhData.add(new XHData(true,6.5f,"2018/12-12"));
                xhData.add(new XHData(true,-6.5f,"2018/12-12/15"));
                xhData.add(new XHData(true,5.6f,"2018/12-12"));
                xhData.add(new XHData(true,9.5f,"2018/12-12"));
                xhData.add(new XHData(true,8.5f,"2018/12-12"));
                xhData.add(new XHData(true,10.5f,"2018/12-12"));
                xhData.add(new XHData(true,7.5f,"2018/12-12"));
                xhData.add(new XHData(true,6.5f,"2018/12-12"));
                xhData.add(new XHData(true,-6.5f,"2018/12-12/15"));
                xhData.add(new XHData(true,5.6f,"2018/12-12"));
                xhData.add(new XHData(true,9.5f,"2018/12-12"));
                xhData.add(new XHData(true,8.5f,"2018/12-12"));
                xhData.add(new XHData(true,10.5f,"2018/12-12"));
                xhData.add(new XHData(true,7.5f,"2018/12-12"));
                xhData.add(new XHData(true,6.5f,"2018/12-12"));
                xhData.add(new XHData(true,-6.5f,"2018/12-12/15"));
                xhLineChar.setLineHOrLineW(2.0f,10.0f);
                xhLineChar.setDataArray(xhData);
                return new MyXhViewHolder(View.inflate(MainActivity.this,R.layout.test_layout,null)/*第一個View*/,inflate/*第二個View*/);
            }

            @Override
            public void initView(int position, XHViewHolder xhViewHolder, String o) {

                MyXhViewHolder myXhViewHolder = (MyXhViewHolder) xhViewHolder;
                myXhViewHolder.textView.setText(o);

            }
        });
    }

    class MyXhViewHolder extends XHViewHolder{


        public TextView textView;
        public MyXhViewHolder(View view,View view2) {
            super(view,view2);
            textView = (TextView) findViewById(R.id.textView);
        }
    }

github:https://github.com/hanxinhao000/ListViewAnim

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,936評論 25 709
  • 四大名著中也就西游記最常被惡搞,這也足以見得大家對西游記的喜愛,耳熟能詳。 從最開始的劇情,到最后整個人物形象的顛...
    進光吧閱讀 571評論 0 1
  • 文 | 一鳴 1. 當我意識到自己是一個小說中的人物角色之時,我正經歷著非常詭異的事情。 我向來不覺得私見網友是...
    一鳴閱讀 3,311評論 84 129
  • 自小弟被送到少林寺以后我與他已長時間未見,此番若不是家族有難,我亦被追蹤,也無需他下山。 自我逃到四伯的地盤后我便...
    墨黎初心閱讀 251評論 0 0
  • 財富沒有突然不勞而獲的,來自于氣運,勞動,以及日常的積累。 所以這次我才會拒絕,對于父親來說是不要白不要。但對我,...
    瞿桂林閱讀 45評論 0 0

友情鏈接更多精彩內容