//自定义流失布局

//流式布局 activity

public class SelfActivity extends AppCompatActivity {

  private EditText mEditText;
    private List<String> stringList=new ArrayList<>();
    private SelfView mSelfView;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_self);
    mSelfView=(SelfView)findViewById(R.id.self_view);
    mEditText=(EditText)findViewById(R.id.edtext);
    findViewById(R.id.add).setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            String message=mEditText.getText().toString().trim();
            if(TextUtils.isEmpty(message)){
                Toast.makeText(SelfActivity.this,"内容不能为空",Toast.LENGTH_SHORT).show();
                return;
            }
            stringList.add(message);
            mSelfView.setListData(stringList);
        }
    });
}

}

  


/ *
  *继承LinearLayout  
 */

    public class LiuShiView extends LinearLayout {
        private  LinearLayout allLayout;
        
        public LiuShiView(Context context) {
            super(context);
            init(context);
        }
    
        public LiuShiView(Context context, @Nullable AttributeSet attrs) {
            super(context, attrs);
            init(context);
        }
    
        public LiuShiView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
            super(context, attrs, defStyleAttr);
            init(context);
        }
    	
    	//在上边吧context传过来低耦合
       private Context context;
        private void init(Context context) {
       this.context = context;
        View viewV = View.inflate(context,R.layout.layout_all,null);
             allLayout = (LinearLayout) viewV.findViewById(R.id.all_layout);
            addView(viewV);
        }
    	
        private void setList(List<String> arrayList) {
            allLayout.removeAllViews();
            LinearLayout view = (LinearLayout) View.inflate(context, R.layout.self_view_h, null);
            allLayout.addView(view);
            int len =0;
            view.removeAllViews();
            for (int a =0;a<arrayList.size();a++){
    
                String msg = arrayList.get(a);
                    len += msg.length();
                    //如果长度大于22 重新创建layout起到换行的作用
                    if (len > 22){
    
                        view = (LinearLayout) View.inflate(context, R.layout.self_view_h, null);
                        allLayout.addView(view);
                        len = 0;
                    }
    
                View edText = View.inflate(context, R.layout.self_view_text, null);
                TextView text = edText.findViewById(R.id.tv_txt);
                text.setText(msg);
                view.addView(edText);
    	
                LinearLayout.LayoutParams params= (LinearLayout.LayoutParams) edText.getLayoutParams();
                //调试一下 外边距 看起来更有美感
                params.weight=1;
                params.leftMargin=10;
                params.rightMargin=10;
                params.topMargin=10;
                edText.setLayoutParams(params);
            }
    
        }

    /**
     *
     * 传递数据
     * @param listData
     */
   

     public void setListData(ArrayList<String> listData) {
            if (!listData.isEmpty())
            {
                setList(listData);
            }
        }
    }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值