欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

购物车商品数量增减输入自定义View

程序员文章站 2022-05-22 19:55:40
...

一、效果

V 0.0.2

1、增加方法,可使用xml配置设置初始化显示值或调用set方法直接改变数值。
2、增加方法,提供get方法直接获取该控件的当前数值。
3、最小值设置值为小于1的时候,使用1作为最小值。最小值设置为大于最大值时,强制最小值等于最大值的值。最大值设置为小于最小值时,强制最大值等于最小值的值。

V 0.0.1

1、可设置文字大小,目前‘-’、‘+’、输入框文字只能使用同一个大小字体,默认为8sp。
2、可设置最大值与最小值,默认最小为1最大为99,初始化显示为最小值。
3、当输入数值大于最大值时自动变成最大值,小于最小值时自动变成最小值。当前已经是最小值时,减号按钮不可点击,当前已经是最大值时,加号按钮不可点击。
4、可设置监听数值变化,回调方法中返回当前竖数值。
5、宽高自定义,同其他View。高度占满,内部宽度左侧减小按钮:输入框:右侧增加按钮=1:1.5:1,暂不支持自定义。

购物车商品数量增减输入自定义View

二、使用

1. Android Studio用户,在gradle中添加配置。

compile 'com.octopus:amountview:0.0.2'

2. xml中使用。共4个属性,除xml中配置外还可以使用java代码设置。

<com.octopus.amountview.AmountView
        android:layout_width="200dp"
        android:layout_height="50dp"
        app:currentValue="5"
        app:maxValue="99"
        app:minValue="3"
        app:textSize="10sp" />

3. java代码。

设置监听控件数值变化,做自己额外的处理。

public void setOnChangeListener(OnChangeListener)

示例代码:

amountview1.setOnChangeListener(new AmountView.OnChangeListener() {
    @Override
    public void onChanged(int value) {
        ToastUtils.showToast("--->" + value);
    }
});

4. 属性介绍

参数名 参数含义 xml设置 java设置
textSize 字体大小,默认8sp app:textSize=”8sp” public void setTextSize(float)
currentValue 设置要显示的数值,默认使用最小值 app:currentValue=”5” public void setCurrentValue(int)
minValue 最小值,默认1,设置的值不能小于1 app:minValue=”1” public void setMinValue(int)
maxValue 最大值,默认99,不能小于最小值 app:maxValue=”99” public void setMaxValue(int)

5. 注意事项

  • 目前只支持修改部分属性,且两个按钮与输入框的宽度占比为1:1.5。若需根据实际情况调整,可下载源码修改使用或给我提Issues。

6. github

更多信息可下载demo查看。传送门