流式布局

流式布局
public class FlowLayout extends ViewGroup {
    public FlowLayout(Context context) {
        super(context);
    }

    public FlowLayout(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    public FlowLayout(Context context, AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
    }



    @Override
    protected void onLayout(boolean changed, int l, int t, int r, int b) {
    //获取控件的宽度
        int width = getWidth();
        //定义一个长亮行数
        int row=0;
        //子控件左边的坐标
        int disWith=18;
        for (int i = 0; i width){
                row++;
                disWith=18;
            }
            view.layout(disWith,row*measuredHeight,measuredWidth+disWith,measuredHeight*(row+1));
            disWith+=measuredWidth;
        }
    }

    @Override
    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
        super.onMeasure(widthMeasureSpec, heightMeasureSpec);
        measureChildren(widthMeasureSpec,heightMeasureSpec);
    }
}

     shou_cha.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String names = shou_sou.getText().toString();
                presenter.getSouData(names,page,count);
                TextView textView=new TextView(ShangActivity.this);
                textView.setText(names);
                ViewGroup.MarginLayoutParams params = new ViewGroup.MarginLayoutParams(ViewGroup.MarginLayoutParams.WRAP_CONTENT, ViewGroup.MarginLayoutParams.WRAP_CONTENT);
                flow_layout.addView(textView,params);
            }
        });

你可能感兴趣的:(流式布局)