一款不错的自定义组合控件

来源:互联网 发布:网络卖东西 编辑:程序博客网 时间:2024/05/22 00:53

今天给大家分享的是关于自定义组合控件,通过自定义组合控件,可以对一些常用的布局以及逻辑代码进行封装,以减少使用时代码量,使得代码更加简洁。




使用


build.gradle中引用


 compile 'com.github.FJ917:FJMtSortButton:v1.1'

xml

<fj.mtsortbutton.lib.DynamicSoreView

    android:id="@+id/dynamicSoreView"

    android:background="#ffffff"

    app:SoreRadioSelect="@drawable/radio1"

    app:SoreRadioUnselected="@drawable/radio2"

    app:SoreNumber="6"

    app:SoreDistance="20"

    android:layout_width="match_parent"

    android:layout_height="170dp"/>

java

private void data(){

    buttonList = setData();//模拟服务器获取到的按钮列表

    //设置界面监听

    dynamicSoreView.setiDynamicSore(this);

    //控件相关设置

    dynamicSoreView.setGridView(R.layout.viewpager_page).init(buttonList);

}


@Override

public void setGridView(View view, final int type, List data) {

    List<ButtonModel> buttonModels= data;

    GridView gridView = (GridView) view.findViewById(R.id.gridView);

    dynamicSoreView.setNumColumns(gridView);

    SortButtonAdapter adapter = new SortButtonAdapter(this,buttonModels);

    gridView.setAdapter(adapter);

    gridView.setOnItemClickListener(new AdapterView.OnItemClickListener() {

        @Override

        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {

            Toast.makeText(context,"第"+type+"页"+position,Toast.LENGTH_LONG).show();

        }

    });

}

项目地址:

https://github.com/FJ917/FJMtSortButton