Android(安卓)加减
16lz
2021-01-26
add_and_subtract.xml(布局文件)
<?xml version="1.0" encoding="utf-8"?>
AddAndSubtractView 加减 (自定义组合控件)
public class AddAndSubtractView extends LinearLayout {private View mView;private TextView add,sub,number;private OnNumChangedListener onNumChangedListener;public AddAndSubtractView(Context context) { this(context,null);}public AddAndSubtractView(Context context,AttributeSet attrs) { this(context, attrs,-1);}public AddAndSubtractView(Context context,AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); //添加布局和初始化控件 initView(context); //监听 initListenter();}//加减的监听private void initListenter() { //加 add.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { //调用加数的方法 add(); } }); //减 sub.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { //调用减数的方法 sub(); } });}//减得方法private void sub() { //控件初始化的时候已经给了 1 获取 String sub = number.getText().toString(); //String类型转换成Int类型 int parseInt = Integer.parseInt(sub); //判断 if (parseInt>1){ parseInt--; setCurentCount(parseInt); }else { ToastUtil.showToast("不能再少了"); }}//加的方法private void add() { //控件初始化的时候已经给了 1 获取 String add = number.getText().toString();\ //String类型转换成Int类型 int parseInt = Integer.parseInt(add); parseInt++; setCurentCount(parseInt);}//加减的方法都调用它 把加减的值传给接口public void setCurentCount(int parseInt) { //更新 数量 number.setText(parseInt+""); //判断 if (onNumChangedListener!=null){ onNumChangedListener.onNumChanged(this,parseInt); }}public int getCurentCount(){ return Integer.parseInt(number.getText().toString());}//set方法public void setOnNumChangedListener(OnNumChangedListener onNumChangedListener) { this.onNumChangedListener = onNumChangedListener;}//初始化控件private void initView(Context context) { //添加组合控件的布局文件 mView=View.inflate(context,R.layout.add_and_subtract,this); //控件初始化 add=mView.findViewById(R.id.tvAdd); sub=mView.findViewById(R.id.tvSub); number=mView.findViewById(R.id.tvNumber); //初始的时候给1 number.setText("1");}//提供点击的接口public interface OnNumChangedListener { void onNumChanged(View view,int curNum);}}
更多相关文章
- Android学习笔记-Activity的生命周期
- Android自定义ViewGroup神器-ViewDragHelper
- Android仿微信进度弹出框的实现方法
- Android入门之SeekBar(纯java)
- java.lang.UnsatisfiedLinkError: No implementation found for
- AsyncTask 源码解析
- android NFC读卡demo 适用于M1,
- onConfigurationChanged的作用
- Android(安卓)ListView实现方法三(自定义适配器)