欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android自定義控件打造絢麗平行空間引導(dǎo)頁

 更新時間:2021年04月22日 09:42:41   作者:難不難太難了  
這篇文章主要為大家詳細(xì)介紹了Android自定義控件打造絢麗平行空間引導(dǎo)頁,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了Android自定義控件打造平行空間引導(dǎo)頁的具體代碼,供大家參考,具體內(nèi)容如下

先上圖,動圖太大傳不上來,在項(xiàng)目中有動圖

點(diǎn)擊查看動圖

首先解釋下工程的主要部分。

首先谷歌的百分比布局做了部分修改,因?yàn)槲以O(shè)置的寬高都是相對于屏幕的寬度,而谷歌的百分比布局不能實(shí)現(xiàn),只需要修改一部分代碼就可以實(shí)現(xiàn)。下面貼出修改的部分代碼

public static class PercentLayoutInfo 
  { 
 
    private enum BASEMODE 
    { 
 
      BASE_WIDTH, BASE_HEIGHT, BASE_SCREEN_WIDTH, BASE_SCREEN_HEIGHT; 
 
      /** 
       * width_parent 
       */ 
      public static final String PERCENT = "%"; 
      /** 
       * width_parent 
       */ 
      public static final String W = "w"; 
      /** 
       * height_parent 
       */ 
      public static final String H = "h"; 
      /** 
       * width_screen 
       */ 
      public static final String SW = "sw"; 
      /** 
       * height_screen 
       */ 
      public static final String SH = "sh"; 
    } 
.............. 

首先我修改了寬高標(biāo)識的基類,增加了一些識別字段,當(dāng)然僅增加這些還不能實(shí)現(xiàn),還要在識別字段后返回相應(yīng)的標(biāo)準(zhǔn)

PercentLayoutInfo.PercentVal percentVal = new PercentLayoutInfo.PercentVal(); 
    percentVal.percent = percent; 
    if (percentStr.endsWith(PercentLayoutInfo.BASEMODE.SW)) 
    { 
      percentVal.basemode = PercentLayoutInfo.BASEMODE.BASE_SCREEN_WIDTH; 
    } else if (percentStr.endsWith(PercentLayoutInfo.BASEMODE.SH)) 
    { 
      percentVal.basemode = PercentLayoutInfo.BASEMODE.BASE_SCREEN_HEIGHT; 
    } else if (percentStr.endsWith(PercentLayoutInfo.BASEMODE.PERCENT)) 
    { 
      if (isOnWidth) 
      { 
        percentVal.basemode = PercentLayoutInfo.BASEMODE.BASE_WIDTH; 
      } else 
      { 
        percentVal.basemode = PercentLayoutInfo.BASEMODE.BASE_HEIGHT; 
      } 
    } else if (percentStr.endsWith(PercentLayoutInfo.BASEMODE.W)) 
    { 
      percentVal.basemode = PercentLayoutInfo.BASEMODE.BASE_WIDTH; 
    } else if (percentStr.endsWith(PercentLayoutInfo.BASEMODE.H)) 
    { 
      percentVal.basemode = PercentLayoutInfo.BASEMODE.BASE_HEIGHT; 
    } else 
    { 
      throw new IllegalArgumentException("the " + percentStr + " must be endWith [%|w|h|sw|sh]"); 
    } 
 
    return percentVal; 
  } 

這兩段代碼就能幫助我們實(shí)現(xiàn)設(shè)置寬高可以相對于屏幕的寬和高,代碼不太復(fù)雜,后面會貼出項(xiàng)目的完整代碼。
工程中使用了transformPage(View view,float position)首先我介紹一下這個函數(shù),這個函數(shù)在布局滑動時會觸發(fā)這個函數(shù),position代表每個viewpager中每個view布局距離屏幕左邊的距離,setOffScreenPageLimit(int number)可以設(shè)置viewpage緩沖頁面,當(dāng)前頁面左右兩邊能緩沖幾個頁面,比如number=2,代表當(dāng)前頁面左右兩邊最多可以緩沖兩個,這個number數(shù)量和transformPage中的view有聯(lián)系。

首先看一張圖

每次移動view都會調(diào)用transform這個函數(shù),id0,1,2代表三個頁面,position代表三個頁面距離屏幕左邊的距離。
其他的也就是用一些屬性動畫,背景顏色的漸變用了插值器,看完代碼就會明白
項(xiàng)目地址
有不懂的可以隨時提問

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

相關(guān)文章

  • Android TextView的TextWatcher使用案例詳解

    Android TextView的TextWatcher使用案例詳解

    這篇文章主要介紹了Android TextView的TextWatcher使用案例詳解,本篇文章通過簡要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • Android亮屏和熄屏控制實(shí)例詳解

    Android亮屏和熄屏控制實(shí)例詳解

    這篇文章主要介紹了Android亮屏和熄屏控制的方法,結(jié)合實(shí)例形式較為詳細(xì)的分析了Android亮屏與息屏的原理,實(shí)現(xiàn)技巧與相關(guān)注意事項(xiàng),需要的朋友可以參考下
    2016-02-02
  • Android 圖片存入系統(tǒng)相冊更新顯示實(shí)例詳解

    Android 圖片存入系統(tǒng)相冊更新顯示實(shí)例詳解

    這篇文章主要介紹了Android 圖片存入系統(tǒng)相冊更新顯示實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下
    2017-06-06
  • Android中TextView實(shí)現(xiàn)分段顯示不同顏色的字符串

    Android中TextView實(shí)現(xiàn)分段顯示不同顏色的字符串

    在做項(xiàng)目的時候,遇到過一行文字有兩種顏色。在菜鳥的時候直接會想到用多個TextView來實(shí)現(xiàn),所以下面這篇文章主要給大家介紹了關(guān)于Android中TextView如何實(shí)現(xiàn)分段顯示不同顏色字符串的相關(guān)資料,需要的朋友可以參考下。
    2017-12-12
  • Android滑動動態(tài)分頁實(shí)現(xiàn)方法

    Android滑動動態(tài)分頁實(shí)現(xiàn)方法

    這篇文章主要介紹了Android滑動動態(tài)分頁實(shí)現(xiàn)方法,結(jié)合實(shí)例形式分析了Android實(shí)現(xiàn)滑動動態(tài)分頁的操作步驟與核心實(shí)現(xiàn)代碼,需要的朋友可以參考下
    2016-10-10
  • Android使用RSA加密和解密的示例代碼

    Android使用RSA加密和解密的示例代碼

    本篇文章主要介紹了Android使用RSA加密和解密的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-10-10
  • 詳解Android安全防護(hù)之加密算法

    詳解Android安全防護(hù)之加密算法

    Android應(yīng)用對安全防范這方面要求越來越高了。特別是金融行業(yè),如果app沒有沒有做好安全處理,那些很容易被一些Hacker(黑客)所攻擊。并不是說做了這些安全防范,這個應(yīng)用就百分之百的安全的。只是說能夠盡可能加大破解難度。本文將詳細(xì)介紹Android安全防護(hù)之加密算法。
    2021-06-06
  • Android中Handler、Thread、HandlerThread三者的區(qū)別

    Android中Handler、Thread、HandlerThread三者的區(qū)別

    本文主要介紹了Android中Handler、Thread、HandlerThread三者的區(qū)別,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-10-10
  • 解決Android Studio 出現(xiàn)“Cannot resolve symbol” 的問題

    解決Android Studio 出現(xiàn)“Cannot resolve symbo

    今天在調(diào)試的時候,Android Studio報(bào)了一個莫名其妙的錯誤Cannot resolve symbol'R'讓人不知所措,因?yàn)檫@東西根本不歸我管啊,怎么會出現(xiàn) Cannot resolve symbol 這種錯誤呢?下面給大家分享Android Studio 出現(xiàn)“Cannot resolve symbol”解決方案,需要的朋友可以參考下
    2023-03-03
  • Android Studio 配置:自定義頭部代碼注釋及添加模版方式

    Android Studio 配置:自定義頭部代碼注釋及添加模版方式

    這篇文章主要介紹了Android Studio 配置:自定義頭部代碼注釋及添加模版方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03

最新評論