Android仿淘寶、京東商品選擇器

效果圖以下

效果圖
)

sku相關數據

SKU相關數據大體以下,其餘參數可根據自身項目自由擴展android

{
  "pid": 10001,//商品id
  "pictureUrl"://商品主圖
   "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1564393109966&di=95d3036dc6282a14fda223c3b55284be&imgtype=0&src=http%3A%2F%2Fimg4.vipshop.com%2Fupload%2Fmerchandise%2F27600%2FZIMMUR-ZMCQ2028-2.jpg",
  "stockQuantity": 939,//商品總庫存
  "maxPrice": 199.00,//最高價
  "minPrice": 699.00,//最低價
  "skus": [
    {
      "sid": 10001,//skuid
      "price": 199.00,//價格
      "pictureUrl": //商品圖
      "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1564393109966&di=95d3036dc6282a14fda223c3b55284be&imgtype=0&src=http%3A%2F%2Fimg4.vipshop.com%2Fupload%2Fmerchandise%2F27600%2FZIMMUR-ZMCQ2028-2.jpg",
      "stockQuantity": 133,//該商品庫存
      "attributes": [
        {
          "value": "M",
          "key": "尺碼"
        },
        {
          "value": "綠松石藍色",
          "key": "顏色"
        }
      ]
    } 
  ]
}

複製代碼

相關設置

1.不一樣狀態顯示的設置 sku_item_text_selector.xml sku單item字體顯示的三種狀態設置 sku_item_selector.xml sku單item顯示的三種狀態設置 quantity_operator_text_selector.xml 加減按鈕的狀態設置 sku_quantity_input_selector.xml 輸入框兩種輸入狀態設置 sku_quantity_minus_selector.xml 減按鈕的背景狀態設置 sku_quantity_plus_selector.xml 加按鈕的背景狀態設置git

2.最大高度、最小高度設置 SkuMaxHeightScrollView中可在xml中設置maxSkuHeight、minSkuHeight,而SkuSelectScrollView繼承自SkuMaxHeightScrollView也可直接設置github

<com.madreain.sku.view.SkuSelectScrollView
     android:id="@+id/scroll_sku_list"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     app:maxSkuHeight="230"
     app:minSkuHeight="88"
     android:layout_marginTop="5dp" />
複製代碼

相關函數

scrollSkuList.setOnSkuListener(new OnSkuListener() {
            @Override
            public void onUnselected(SkuAttribute unselectedAttribute) {
            
            }

            @Override
            public void onSelect(SkuAttribute selectAttribute) {
              
            }

            @Override
            public void onSkuSelected(Sku sku) {
             
            }
        });
複製代碼

根據不一樣業務場景對監聽方法作處理bash

項目地址app

相關文章
相關標籤/搜索