Skip to content

Wongxd/skuLib

Folders and files

NameName
Last commit message
Last commit date

Latest commit

219bef5 · Oct 25, 2023

History

19 Commits
Dec 31, 2019
Jan 7, 2020
Feb 8, 2018
Jan 11, 2019
Jan 7, 2020
Feb 8, 2018
Oct 25, 2023
Oct 25, 2023
Jan 11, 2019
Feb 8, 2018
Feb 8, 2018
Feb 8, 2018
Feb 8, 2018
Feb 8, 2018

Repository files navigation

skuLib

quickly implement product SKU on Android.

快速实现商品规格选择。

实现类似淘宝规格选择的效果。

源码有较为详细的注释,更多信息请查看源码。

演示


###添加依赖

 // 你的项目中一定要使用recycleview
implementation 'com.android.support:recyclerview-v7:x.x.x'

// 加入本依赖库
// x.y.z 替换成具体的release版本号 如:0.0.7
implementation('com.github.Wongxd:skuLib:x.y.z') { 
	exclude group: 'com.android.support'
}

###使用方式

kotlin:

	 SpecSelectFragment.showDialog(this, null, defaultAttrList, spec)
                    .setShowGoodImgListener { iv, imgUrl ->
                        Log.e(TAG, "商品图片地址= $imgUrl    iv对象--$iv")
                        Glide.with(this).load(imgUrl).placeholder(R.drawable.ic_launcher).centerCrop().into(iv)

                    }
                    .setSubmitSpecCombListener { combBean, num, statusRestoreList ->
                        defaultAttrList = statusRestoreList
                        Log.e(TAG, " 描述---${combBean.desc}      数量---$num")
                        tv.text = " 描述---${combBean.desc}---数量---$num"
                    }

java:

	SpecSelectFragment.showDialog(this, "https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=1282625489,100434574&fm=27&gp=0.jpg", bean)
                    .setShowGoodImgListener(new ShowGoodImgListener() {
                        @Override
                        public void displayImg(ImageView iv, String imgUrl) {
                            Glide.with(AtyJavaActivity.this).load(imgUrl)
                                    .placeholder(R.drawable.ic_launcher).into(iv);
                        }
                    })
                    .setSubmitSpecCombListener(new SubmitSpecCombListener() {
                        @Override
                        public void onSubmit(SpecBean.CombsBean combBean, int num, List<ProductModel.AttributesEntity.AttributeMembersEntity> statusRestoreList) {
                            tv.setText("描述" + combBean.getDesc() + "----数量" + num);
                        }
                    });

参考1--Android DialogFragment实现底部弹出菜单效果

参考2-- 利用观察者模式(发布/订阅模式)制作一个“代替”广播的通知类

参考3--Sku算法--商城(品种,规格,参数等选择)