最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android recyclerView橫條指示器實現(xiàn)淘寶菜單模塊

 更新時間:2020年02月28日 08:45:12   作者:一般的帥gg  
這篇文章主要為大家詳細介紹了recyclerView橫條指示器實現(xiàn)淘寶菜單模塊,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

電商首頁菜單模塊,可以橫向滑動,底部的滑動位置指示器該如何實現(xiàn)呢?

實現(xiàn)思路:

1.上方橫滑列表可以直接使用RecyclerView實現(xiàn);

2.下方的指示器:

(1).計算出RecyclerView劃出屏幕的距離w1和剩余寬度w2的比例y,y = w1 / (總寬度w3 - 可使視區(qū)域?qū)挾葁4);

(2).計算出指示器該移動的距離w5 = y * (指示器的總寬度w6 - 滑塊寬度w7);

(3).指示器布局實現(xiàn):

<RelativeLayout
  android:id="@ id/parent_layout"
  android:layout_marginTop="10dp"
  android:layout_width="80dp"
  android:layout_height="4dp"
  android:layout_gravity="center"
  android:background="@drawable/bg_store_classify_normal">

  <View
   android:id="@ id/main_line"
   android:layout_width="40dp"
   android:layout_height="4dp"
   android:layout_centerVertical="true"
   android:background="@drawable/bg_store_classify_selected" />
</RelativeLayout>

(4).代碼調(diào)用:

rcvClassifyTypes.addOnScrollListener(new RecyclerView.OnScrollListener() {
 @Override
 public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
  super.onScrollStateChanged(recyclerView, newState);
 
 }
 
 @Override
 public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
  super.onScrolled(recyclerView, dx, dy);
  //整體的總寬度,注意是整體,包括在顯示區(qū)域之外的
  //滾動條表示的總范圍
  int temp = rcvClassifyTypes.computeHorizontalScrollRange();
  if (temp > range) {
   range = temp;
  }
  //滑塊的偏移量
  int offset = rcvClassifyTypes.computeHorizontalScrollOffset();
  //可視區(qū)域長度
  int extent = rcvClassifyTypes.computeHorizontalScrollExtent();
  //滑出部分在剩余范圍的比例
  float proportion = (float) (offset * 1.0 / (range - extent));
  //計算滾動條寬度
  float transMaxRange = parentLayout.getWidth() - childline.getWidth();
  //設(shè)置滾動條移動
  childline.setTranslationX(transMaxRange * proportion);
 }
});

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Android捕捉錯誤try catch 的簡單使用教程

    Android捕捉錯誤try catch 的簡單使用教程

    這篇文章主要介紹了Android捕捉錯誤try catch 的簡單使用,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-09-09
  • Android實現(xiàn)RecyclerView下拉刷新效果

    Android實現(xiàn)RecyclerView下拉刷新效果

    這篇文章主要為大家詳細介紹了Android實現(xiàn)RecyclerView下拉刷新效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • RecylerView實現(xiàn)流布局StaggeredGridLayoutManager使用詳解

    RecylerView實現(xiàn)流布局StaggeredGridLayoutManager使用詳解

    這篇文章主要為大家詳細介紹了RecylerView實現(xiàn)流布局StaggeredGridLayoutManager使用,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-09-09
  • Flutter適配深色模式的方法(DarkMode)

    Flutter適配深色模式的方法(DarkMode)

    這篇文章主要介紹了Flutter適配深色模式的方法(DarkMode),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-10-10
  • 如何在Android studio 中使用單例模式

    如何在Android studio 中使用單例模式

    這篇文章主要介紹了如何在Android studio 中使用單例模式,幫助大家更好的理解和學習Android開發(fā),感興趣的朋友可以了解下
    2021-03-03
  • Flutter封裝組動畫混合動畫AnimatedGroup示例詳解

    Flutter封裝組動畫混合動畫AnimatedGroup示例詳解

    這篇文章主要為大家介紹了Flutter封裝組動畫混合動畫AnimatedGroup示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-01-01
  • Android使用Retrofit實現(xiàn)自定義Converter解析接口流程詳解

    Android使用Retrofit實現(xiàn)自定義Converter解析接口流程詳解

    Retrofit是一個RESTful的HTTP網(wǎng)絡(luò)請求框架的封裝,網(wǎng)絡(luò)請求的工作本質(zhì)上是OkHttp完成,而Retrofit僅負責網(wǎng)絡(luò)請求接口的封裝
    2023-03-03
  • Flutter加載圖片的多樣玩法匯總

    Flutter加載圖片的多樣玩法匯總

    flutter一般分為兩種圖片加載的方式:網(wǎng)絡(luò)加載和本地加載,下面這篇文章主要給大家介紹了關(guān)于Flutter加載圖片的多樣玩法的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-11-11
  • Android使用NumberPicker實現(xiàn)滑輪日期選擇器

    Android使用NumberPicker實現(xiàn)滑輪日期選擇器

    這篇文章主要為大家介紹了如何使用Android中的NumberPicker控件,以一種簡單而直觀的方式實現(xiàn)滑輪式的日期選擇器,需要的小伙伴可以參考一下
    2023-06-06
  • Android中快速便捷的實現(xiàn)圓角按鈕方法詳解

    Android中快速便捷的實現(xiàn)圓角按鈕方法詳解

    圓角按鈕在我們現(xiàn)在的界面中常常會用到,最近在開發(fā)中就又遇到了,所以想著有沒有更快速更便捷的實現(xiàn)方法呢,所以就有了這篇文章,本文主要給大家介紹了關(guān)于Android中如何快速便捷的實現(xiàn)圓角按鈕的相關(guān)資料,需要的朋友可以參考下。
    2017-05-05

最新評論

屏南县| 泗水县| 察哈| 疏附县| 德兴市| 嘉鱼县| 泰来县| 泰和县| 惠州市| 连城县| 泗阳县| 玉环县| 达拉特旗| 垦利县| 漳浦县| 垦利县| 密云县| 门源| 广西| 旬邑县| 遂昌县| 揭东县| 张北县| 九寨沟县| 凤台县| 宁阳县| 新蔡县| 张家港市| 改则县| 辽阳县| 肇东市| 通山县| 伊川县| 丹棱县| 城市| 饶阳县| 辽宁省| 厦门市| 洞头县| 正镶白旗| 黄平县|