美文网首页
Android 加减

Android 加减

作者: 人心所向便是阳光 | 来源:发表于2018-11-21 20:27 被阅读0次

add_and_subtract.xml(布局文件)

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout     xmlns:android="http://schemas.android.com/apk/res/an   droid"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:background="#a9a7a7">
    <TextView
        android:id="@+id/tvSub"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:padding="10dp"
        android:text="--"
        android:textColor="@color/colorAccent"
        android:textSize="14sp" />

    <TextView
        android:id="@+id/tvNumber"
        android:layout_width="80dp"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:padding="10dp"
        android:textColor="@color/colorAccent"
        android:textSize="14sp" />

    <TextView
        android:id="@+id/tvAdd"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:padding="10dp"
        android:text="+"
        android:textColor="@color/colorAccent"
        android:textSize="14sp" />
</LinearLayout>

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 加减

    add_and_subtract.xml(布局文件) AddAndSubtractView 加减 (自定义组合控件)

  • android教程之intent的action属性使用示例(in

    android教程之intent的action属性使用示例(intent发短信) 作者: 字体:[增加减小] 类型...

  • Android工程师,不理解模块化、组件化、插件化的区别怎么行?

    上次,我们讲了MVC、MVP、MVVM,其实从狭义上来讲,Android的架构概念就在这儿,无论怎么变,都是加加减...

  • Android 购物车数量加减

    github地址 1.在项目根目录添加 2.在项目目录build.gradle添加 xml引用 4.activit...

  • 购物车流程

    Android程序员面试宝典 一分钟实现购物车加减控件 京东地址管理 配套视频 http://www.toutia...

  • 科目三考试

    1.加减档 加减档起点 加减档终点 (铁皮房) (路线1)起步后迅速提速上2档,加速至25保持住,准备开始加减档项...

  • ClickHouse计算每个月最后一天日期

    toDayOfMonth():取出日期subtractDays():日期加减,减天addMonths():日期加减...

  • 加减

    给自身做加法,给产品做减法

  • 加减

    想要的东西就在那里 不多不少 如果每天堆砌 则会越来越多 如果每天细琢 则会越来越少 有人说越多越丰富 看我学富五...

  • 加减

    做加法是本能,做减法是智慧。 人生下来是,什么都想拿,却很有限,等真的不能全拿的时候,就要做减法,做减法要比做加法...

网友评论

      本文标题:Android 加减

      本文链接:https://www.haomeiwen.com/subject/pqlhqqtx.html