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

Android仿IOS10圓盤時間選擇器

 更新時間:2018年07月27日 08:35:33   作者:云de天空  
這篇文章主要為大家詳細(xì)介紹了Android仿IOS10圓盤時間選擇器,自定義圓盤時間選擇器,具有一定的參考價值,感興趣的小伙伴們可以參考一下

介紹

這是一款仿IOS10(就寢功能)的圓盤時間選擇器

項目演示

實現(xiàn)思路

以720度為一個周期,0~360°對應(yīng)0~12小時,360°~720°對應(yīng)12~24小時

這里以”開始時間設(shè)置按鈕”為例來談?wù)勊幕瑒訉崿F(xiàn):
將”開始時間設(shè)置按鈕”作為點A,表盤中心作為點O,手指觸摸點作為點P.通過反正切公式可以計算出∠AOP的大小,然后隨著手指的位置不斷變化去更新點A的位置(即點A的角度).

// 坐標(biāo)系的直線表達式
// 直線l1的表達式子:過鐘表中心點和開始控件中心點
float a1 = mCenterY - mStartBtnCurY;
float b1 = mStartBtnCurX - mCenterX;
float c1 = mStartBtnCurY * mCenterX - mCenterY * mStartBtnCurX;
double d1 = (a1 * eventX + b1 * eventY + c1) / (Math.sqrt(a1 * a1 + b1 * b1));

// 直線l2的表達式:過鐘表中心點且垂直直線l1
     float a2 = b1;
     float b2 = -a1;
     float c2 = -a2 * mCenterX - b2 * mCenterY;
     double d2 = (a2 * eventX + b2 * eventY + c2) / (Math.sqrt(a2 * a2 + b2 * b2));

// 以l1為基準(zhǔn)線,順勢針半圓為0-180度,逆時針半圓為0-負(fù)180度
     double moveDegree = Math.toDegrees(Math.atan2(d1, d2));

     mStartDegree = (float) (mStartDegree + Math.floor(moveDegree));
     mStartDegree = (mStartDegree < 0) ? mStartDegree + mDegreeCycle : mStartDegree % mDegreeCycle;
     refreshStartBtnPositon();
     invalidate();

項目地址:Android仿IOS10圓盤時間選擇器

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

相關(guān)文章

  • 深入理解Android之接口回調(diào)機制

    深入理解Android之接口回調(diào)機制

    本篇文章主要介紹了Android之接口回調(diào)機制,在開發(fā)中經(jīng)常會用到,具有一定的學(xué)習(xí)價值,有需要的可以來了解一下。
    2016-10-10
  • Android使用PullToRefresh完成ListView下拉刷新和左滑刪除功能

    Android使用PullToRefresh完成ListView下拉刷新和左滑刪除功能

    ListView下刷新刷功能相信從事Android開發(fā)的猿友們并不陌生,本文就帶領(lǐng)一些剛?cè)腴Tandroid的朋友或者一起愛分享的朋友來簡單的實現(xiàn)ListView的下拉刷新和左滑刪除效果。感興趣的朋友一起看看吧
    2016-11-11
  • Android 同時setTag兩次保存多種值的示例代碼

    Android 同時setTag兩次保存多種值的示例代碼

    這篇文章主要介紹了Android 同時setTag兩次保存多種值的示例代碼,需要的朋友可以參考下
    2017-02-02
  • Android如何創(chuàng)建桌面快捷方式

    Android如何創(chuàng)建桌面快捷方式

    這篇文章主要為大家詳細(xì)介紹了Android創(chuàng)建桌面快捷方式的方法,感興趣的小伙伴們可以參考一下
    2016-08-08
  • Android日期和時間選擇器實現(xiàn)代碼

    Android日期和時間選擇器實現(xiàn)代碼

    這篇文章主要為大家詳細(xì)介紹了Android日期和時間選擇器實現(xiàn)代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • 詳解Android MVP開發(fā)模式

    詳解Android MVP開發(fā)模式

    這篇文章主要為大家介紹了Android MVP開發(fā)模式的相關(guān)資料,需要的朋友可以參考下
    2016-01-01
  • Android自定義View實現(xiàn)游戲搖桿鍵盤的方法示例

    Android自定義View實現(xiàn)游戲搖桿鍵盤的方法示例

    Android進階過程中有一個繞不開的話題——自定義View。最近在做項目中又遇到了,所以下面這篇文章主要給大家介紹了利用Android自定義View實現(xiàn)游戲搖桿鍵盤的相關(guān)資料,操作方式類似王者榮耀的搖桿操作,文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面來一起看看吧。
    2017-07-07
  • Android軟鍵盤彈出時的界面控制方法

    Android軟鍵盤彈出時的界面控制方法

    這篇文章主要介紹了Android軟鍵盤彈出時的界面控制方法,結(jié)合實例形式分析了Android軟鍵盤彈出后的三種模式,涉及Android針對AndroidManifet.xml的修改技巧,需要的朋友可以參考下
    2016-08-08
  • Android中ProgressBar用法簡單實例

    Android中ProgressBar用法簡單實例

    這篇文章主要介紹了Android中ProgressBar用法,以簡單實例形式分析了Android中ProgressBar進度條控件的功能與布局相關(guān)技巧,需要的朋友可以參考下
    2016-01-01
  • Android webview用法實例簡析

    Android webview用法實例簡析

    這篇文章主要介紹了Android webview用法,結(jié)合實例形式簡單分析了Android中webview的功能、用法與相關(guān)注意事項,需要的朋友可以參考下
    2016-01-01

最新評論