日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android如何实现全局的护眼模式

發布時間:2023/12/18 Android 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android如何实现全局的护眼模式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

轉載請標明出處:http://blog.csdn.net/zhaoyanjun6/article/details/122882722
本文出自【趙彥軍的博客】

最近接到一個做護眼模式的需求,要求是在Android App 全局,在任何一個頁面都顯示。

在做需求之前要先弄清楚幾個概念

藍光

短波藍光是波長處于400nm-480nm之間具有相對較高能量的光線。該波長內的藍光會使眼睛內的黃斑區毒素量增高,嚴重威脅我們的眼底健康。藍光誘發致盲眼病,最有效的解決方案是對電視進行貼膜處理。防藍光貼膜技術已經很成熟,成本很低,可以有效阻止藍光穿透。

在這里,特別提出一點,藍光并不都是有害藍光,真正有害的是波長400到450以內的藍光,而480到500納米之間的藍光有一種調整生物節律的作用,睡眠、情緒、記憶力等都與之相關,對人體反而是有益的。而且短波藍光是不是一定會對人眼產生傷害,這與照射強度與照射時間有關,當照度達到一定程度后,持續兩個小時以上,才有可能對視網膜產生損害。

護眼模式

簡單來說,就是把屏幕發出的光,過濾掉對人體有害的藍光,就是護眼模式。

實現原理

第一個問題,怎么過濾藍光。

/*** 過濾藍光,過濾藍光比例,一般傳30*/private fun calculateFilterColor(blueFilterPercent: Int = 30): Int {var realFilter = blueFilterPercentif (realFilter < 10) {realFilter = 10} else if (realFilter > 80) {realFilter = 80}val a = (realFilter / 80f * 180).toInt()val r = (200 - realFilter / 80f * 190).toInt()val g = (180 - realFilter / 80f * 170).toInt()val b = (60 - realFilter / 80f * 60).toInt()return Color.argb(a, r, g, b)}

Activity 怎么設置藍光,也很簡單就是 在 decorView 增加一個前景色

//過濾藍光,獲取對眼睛健康的顏色 val color = calculateFilterColor() activity.window.decorView.foreground = ColorDrawable(color)

那么怎么運用到所有的 activity ,一種思路是在 BaseActivity onResume 方法,統一設置護眼模式。但是有個問題,有些 activity 是在第三方 sdk 中,并不會繼承我們的 BaseActivity 。 我選擇的方案是,在 Application 里注冊監聽器。如下:

class App : Application() {override fun onCreate() {super.onCreate()registerActivityLifecycleCallbacks(object : ActivityLifecycleCallbacks {override fun onActivityResumed(activity: Activity) {val color = UtilBlueEye.calculateFilterColor()activity.window.decorView.foreground = ColorDrawable(color)}})} }

這樣就能運用到所有的 Activity。

怎么關閉藍光呢? 同樣的套路,在 decorView 增加一個透明前景色。

//關閉藍光 activity.window.decorView.foreground = ColorDrawable(Color.TRANSPARENT)

上面都是針對單個 activity 設置護眼,如何對單獨的 View 設置?也是超級簡單,對 view 設置前景色即可,代碼如下:

val color = UtilBlueEye.calculateFilterColor() view.foreground = ColorDrawable(color)

activity 設置了護眼模式,并不會影響到 Dialog 上,如何處理 Dialog 的護眼模式,也是很簡單。

val color = UtilBlueEye.calculateFilterColor() dialog.window?.decorView?.foreground = ColorDrawable(color)

好了,護眼模式做完了,關電腦,下班回家。

總結

以上是生活随笔為你收集整理的Android如何实现全局的护眼模式的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 好屌妞视频这里有精品 | 波多野结衣中文字幕在线播放 | 激情文学综合网 | 黄色一级片免费 | 欧美色香蕉 | 日本黄频 | 日本成人在线视频网站 | 国产又粗又大又爽视频 | 黄色一级一级 | 亚洲精品av中文字幕在线在线 | 色综合久久久久久久 | 国产suv精品一区二区883 | 人人爱爱人人 | 91伊人| 538国产视频 | 欧美激情在线一区二区 | 在线观看免费人成视频 | 五月开心婷婷 | 尤物最新网址 | 大咪咪dvd| 午夜香蕉视频 | 青青av在线 | 青青青草视频在线 | 永久免费看mv网站入口亚洲 | 久久嫩草 | 国产裸体永久免费视频网站 | 91在线视频播放 | 成人av免费在线看 | 夜夜躁狠狠躁日日躁 | 三级艳丽杨钰莹三级 | 最新中文字幕av | 污污的网站在线免费观看 | 国内精品第一页 | 亚洲欧美在线视频观看 | 国产午夜免费福利 | 欧美 变态 另类 人妖 | 国产乱码精品一区二三赶尸艳谈 | 国产精品乱码一区二区三区 | 黄色二级视频 | 亚洲欧美日韩国产一区二区三区 | 天堂最新 | 中国一级特黄真人毛片免费观看 | 久久久久麻豆v国产精华液好用吗 | 另类综合视频 | 奇米第四色影视 | 黄黄的网站 | 黄色一级片一级片 | 在线观看 中文字幕 | 中文字幕第一页av | 精品国产麻豆 | 欧美日韩激情 | 日韩www| 免费福利在线视频 | 国产又大又粗又爽的毛片 | 国产sm主人调教女m视频 | 亚洲伦理自拍 | 日韩成人一区二区视频 | 金瓶狂野欧美性猛交xxxx | 波多野结衣电影在线播放 | 99视频在线精品免费观看2 | 黄色性视频 | 国产精品嫩草影院精东 | xxx日韩 | 插我一区二区在线观看 | 国产大片av| 精品久久久噜噜噜久久久 | 欧美色图网站 | 狠狠操天天射 | 亚洲精品视频免费看 | 中文字幕在线视频日韩 | 无码人妻精品丰满熟人区 | 不卡视频一区二区三区 | 国产精品久久久久久久久久妞妞 | 欧美激情视频一区 | 亚洲欧美激情精品一区二区 | 又色又爽又黄18网站 | 亚洲最大成人av | 无遮挡裸光屁屁打屁股男男 | 青青草伊人网 | 日韩av免费在线观看 | 好吊视频一区二区三区四区 | 婷婷色中文字幕 | 视频在线日韩 | 中国肥胖女人真人毛片 | 欧美日韩视频在线观看一区 | 五月婷婷综 | 久热欧美 | 亚洲欧美强伦一区二区 | 国产丰满大乳奶水在线视频 | 亚洲破处视频 | 成人激情自拍 | 超碰在线免费播放 | 欧美两根一起进3p做受视频 | 99热伊人 | 国产精品短视频 | 国产美女无遮挡网站 | 日韩成人高清在线 | 91精品国产高清 | 黄色成人毛片 |