Android 4.2 關(guān)于GlowPadView的說明.docx_第1頁
Android 4.2 關(guān)于GlowPadView的說明.docx_第2頁
Android 4.2 關(guān)于GlowPadView的說明.docx_第3頁
Android 4.2 關(guān)于GlowPadView的說明.docx_第4頁
Android 4.2 關(guān)于GlowPadView的說明.docx_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

Android 4.2 關(guān)于GlowPadView的說明 對 于手機(jī)OEM/ODM廠商來講,客制化是必不可少的,國際廠商比如三喪,LG等等,都會對原生Android進(jìn)行定制。我們買到的手機(jī),系統(tǒng)都是經(jīng)過定制 的,這跟Google Android AOSP有很大的區(qū)別,這些區(qū)別就是廠商們想搞的差異化。以下內(nèi)容為GlowPadView客制化的一些筆記,怕以后忘了再去查。 GlowPadView就是用來實(shí)現(xiàn)滑動接聽的控件,該控件隸屬InCallScreen界面,也就是我們撥打或接聽電話的那個界面,在之前的文章里面也有提到關(guān)于InCallScreen界面UI的詳細(xì)分析,有興趣的童鞋可以自取搜來看一下。 最 近需要做關(guān)于滑動接聽的一些定制,我們知道,Android原生就支持來電滑動接聽/拒接/短信回復(fù)三種方式,實(shí)現(xiàn)該效果的控件在Android 4.2中叫GlowPadView.java,之前的版本叫做MultiWaveView.java。在Android 4.2上,Google對這一塊又做了一些改動,比如移除了在4.0上的水波紋動畫,滑動時不再顯示圓圈,取而代之的是小白點(diǎn),帶面里面叫 PointCloud。之前在github上有看到一個開源項(xiàng)目,就是講4.2上的這種動畫效果提取出來,這對于像將該效果移植到4.2以前的設(shè)備上還是 很有幫助的。代碼位置:SourceCode/packages/app/Phone,滑動接聽控件布局如下所示:1 名詞解釋:1. targetDrawables來電接聽控件默認(rèn)有三個處理事件:接聽、拒接、短信回復(fù)。這里的arrary/incoming_call_widget_3way_targets實(shí)際內(nèi)容如下:1 2 drawable/ic_lockscreen_answer3 drawable/ic_lockscreen_text4 drawable/ic_lockscreen_decline5 null6 2. targetDescriptions針對接聽控件對應(yīng)的描述文字。內(nèi)容如下:1 2 string/description_target_answer3 string/description_target_send_sms4 string/description_target_decline5 null6 3. directionDescriptions對滑動接聽控件方向的描述,內(nèi)容如下:1 2 *android:string/description_direction_right3 *android:string/description_direction_up4 *android:string/description_direction_left5 null6 4. handleDrawable這個就是中間按個小圓圈的圖片資源5. innerRadius內(nèi)圓的半徑大小。這里說的內(nèi)圓使我們看不到的,與后面提到的外圓對應(yīng)起來。當(dāng)來電時會有一個小白點(diǎn)從中心向外擴(kuò)散的動畫,這里的起點(diǎn)就是從innerRadius開始的。6. outerRadius外圓的半徑大小。與前面的內(nèi)圓對應(yīng)起來,都是用于輔助顯示小白點(diǎn)動畫的,外圓就是動畫的截止點(diǎn),內(nèi)圓為起始點(diǎn)。7. outerRingDrawable外圓的邊界線。這是通過shape配置畫出來的。代碼如下:1 4 6 7 8 在Android 4.2上我們已經(jīng)看不到這條邊界線了,但通過改變solid里的color值和stroke李的color值可以將其顯示出來,在Android4.0上 就是這么做的。設(shè)置邊界線有利于targets的防止,畢竟寬度和高度都有了,位置自然很容易得出,也便于控制。 8. snapMargin距離target多遠(yuǎn)會達(dá)到觸發(fā)條件。也就是在來電時,如果我們點(diǎn)擊中間的按鈕并逐漸向接聽側(cè)滑動,當(dāng)滑動到一定的位置時,會自動將將接聽按鈕的狀態(tài)改變,隨之圖片也會改變。這里的snapMargin就是用來判斷我們手指與target距離的。9. vibrationDuration震動持續(xù)時長。10. feedbackCount動畫出現(xiàn)的次數(shù)。也就是來電時,小白點(diǎn)從內(nèi)向外擴(kuò)散,這種效果只有一次。這里 為什么會有這個參數(shù)呢?因?yàn)樵贏ndroid 4.0時,那個時候還沒有小白點(diǎn),只有水波紋,而且這個值也默認(rèn)是3,我們可以看到來電時,會閃動3個水波紋,Android 4.2在其基礎(chǔ)上進(jìn)行了修改,但為了保留原來的結(jié)構(gòu),因此并沒有大刀闊斧的刪掉這些代碼。11. glowRadius這個是光暈半徑。也就是當(dāng)我們按下并移動時,跟隨我們手指移動的那一小團(tuán)小白 點(diǎn)。在4.0中是handleDrawable會跟著移動,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論