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

Android仿IOS10圓盤(pán)時(shí)間選擇器

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

介紹

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

項(xiàng)目演示

實(shí)現(xiàn)思路

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

這里以”開(kāi)始時(shí)間設(shè)置按鈕”為例來(lái)談?wù)勊幕瑒?dòng)實(shí)現(xiàn):
將”開(kāi)始時(shí)間設(shè)置按鈕”作為點(diǎn)A,表盤(pán)中心作為點(diǎn)O,手指觸摸點(diǎn)作為點(diǎn)P.通過(guò)反正切公式可以計(jì)算出∠AOP的大小,然后隨著手指的位置不斷變化去更新點(diǎn)A的位置(即點(diǎn)A的角度).

// 坐標(biāo)系的直線表達(dá)式
// 直線l1的表達(dá)式子:過(guò)鐘表中心點(diǎn)和開(kāi)始控件中心點(diǎn)
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的表達(dá)式:過(guò)鐘表中心點(diǎn)且垂直直線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)線,順勢(shì)針半圓為0-180度,逆時(shí)針半圓為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();

項(xiàng)目地址:Android仿IOS10圓盤(pán)時(shí)間選擇器

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

相關(guān)文章

  • android AsyncTask詳細(xì)介紹

    android AsyncTask詳細(xì)介紹

    本篇文章主要主要介紹了AsyncTask介紹,AsyncTask,是android提供的輕量級(jí)的異步類,有興趣的同學(xué)可以了解一下。
    2016-11-11
  • 在kotlin的安卓項(xiàng)目中使用dagger的操作方法

    在kotlin的安卓項(xiàng)目中使用dagger的操作方法

    在 Kotlin 的 Android 項(xiàng)目中使用 ??Dagger??(特別是 ??Dagger Hilt??,官方推薦的簡(jiǎn)化版)進(jìn)行依賴注入(DI)可以大幅提升代碼的可測(cè)試性和模塊化程度,這篇文章主要介紹了在kotlin的安卓項(xiàng)目中使用dagger的相關(guān)操作,需要的朋友可以參考下
    2025-04-04
  • 最新評(píng)論

    海盐县| 香格里拉县| 麦盖提县| 馆陶县| 淮安市| 封丘县| 扶绥县| 黄龙县| 潼关县| 平阴县| 宿迁市| 阿尔山市| 荣昌县| 周宁县| 沙雅县| 壤塘县| 桂东县| 苏尼特左旗| 凉山| 哈尔滨市| 肃南| 云阳县| 临泽县| 岐山县| 股票| 通许县| 石棉县| 无棣县| 新昌县| 交口县| 县级市| 利川市| 静海县| 平昌县| 吉水县| 高陵县| 无锡市| 门头沟区| 利辛县| 阳新县| 泽普县|