獲取桌面桌布作為App背景

2021-07-11 09:32:14 字數 563 閱讀 5608

這樣做當然是可以,但是發現背景圖會被嚴重壓縮,跟桌面上的桌布效果相差太大。

用各種壓縮,拉伸,裁剪都不起作用,簡直要抓狂啊。後來想,launcher裡面既然可以做到,為何不模仿launcher的做法呢?

於是檢視launcher設定桌布的原始碼,發現自定義了乙個drawable:

@override

public void draw(canvas canvas)

@override

public int getopacity()

@override

public void setalpha(int alpha)

@override

public void setcolorfilter(colorfilter cf)

結合自己的一些**,最終解決了背景倍壓扁的問題:

private static bitmap drawabletobitmap(drawable drawable)

最後,修改setbackground方法:

private void setbackground() else

Android獲取當前桌面桌布

這段時間專案有需求要獲取桌面的桌布來設成背景,發現網上很多同學都通過wall manager的getdrawable等api來獲取,這樣的確能獲得到桌布,但是要稍微注意一下。桌面的桌布可是很大很大的一張哦,你要直接用來設定成背景,那可是很醜的。所以我們需要稍微處理一下。大致思路就是把一張桌布切成幾片...

框架 MFC 修改桌面 桌布

功 能 使用 iactivedesktop 介面獲取 設定和重新整理桌面背景 桌布 開發環境 vc vs2005 vs2008 vs2010 vs2012 vs2013 新建專案 mfc應用程式 基於對話方塊 include include shlobj.h shlwapi.h 包含了對檔案判別的a...

爬蟲爬取桌面桌布

import requests from bs4 import beautifulsoup import os import time import random import useragent interval 3 爬取的間隔時間 firstdir d netbian 總路徑 classific...