1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > Android动态壁纸 Live Wallpaper(WallpaperService.Engine)

Android动态壁纸 Live Wallpaper(WallpaperService.Engine)

时间:2020-08-26 12:16:40

相关推荐

Android动态壁纸 Live Wallpaper(WallpaperService.Engine)

源码下载:/detail/heng615975867/6533429

动态壁纸Live Wallpaper架构

动态壁纸Live Wallpaper应用程序必须实现动态壁纸的服务程序WallpaperService和描绘动态壁纸的引擎WallpaperService.Engine,当你需要设置动态壁纸的参数来改变动画的属性时,必须提供设置参数的窗体。此时才需要实现动态壁纸的参数设置窗体PreferenceActivity。

咱们先来说一次简单的步骤:

(1)建一个类继承WallpaperService,比如说为LiveWallpaper.java

(2)然后在AndrodManifest.XML文件的<service>标签内定义动态壁纸的服务程序LiveWallpaper.java和动态壁纸的资源来源“/res/XML/liveWallpaper.XML”

(3)还需要增加一个<Activity>标签来设置动态壁纸参数设置程序HelloLiveWallpaperSetting.java,当然这个要去继承PreferenceActivity

AndrodManifest.XML

[html]view plain copy<?xmlversion="1.0"encoding="utf-8"?> <manifestxmlns:android="/apk/res/android" package="com.njue.livewallpaper" android:versionCode="1" android:versionName="1.0"> <uses-sdkandroid:minSdkVersion="7"/> <application android:icon="@drawable/icon" android:label="@string/app_name"> <service android:label="@string/app_name" android:permission="android.permission.BIND_WALLPAPER" android:name=".LiveWallpaper"> <intent-filter> <actionandroid:name="android.service.wallpaper.WallpaperService"/> </intent-filter> <meta-dataandroid:name="android.service.wallpaper" android:resource="@xml/livewallpaper"/> </service> <activityandroid:name=".LiveWallpaperSettings" android:label="@string/wallpaper_settings" android:theme="@android:style/Theme.Light.WallpaperSettings" android:exported="true"> </activity> </application> </manifest>

/res/XML/liveWallpaper.XML

[html]view plain copy<?xmlversion="1.0"encoding="UTF-8"?> <wallpaper xmlns:android="/apk/res/android" android:thumbnail="@drawable/floewr1" android:description="@string/description" android:settingsActivity="com.njue.livewallpaper.LiveWallpaperSettings" />

参数设置界面的布局代码settings.xml

[html]view plain copy<?xmlversion="1.0"encoding="utf-8"?> <PreferenceScreen xmlns:android="/apk/res/android" android:title="@string/settings"> <ListPreference android:key="@string/leaf1Count" android:title="@string/settings_title" android:summary="@string/settings_summary" android:entries="@array/entries" android:entryValues="@array/values"/> <ListPreference android:key="@string/flower1Count" android:title="@string/settings_title1" android:summary="@string/settings_summary1" android:entries="@array/entries" android:entryValues="@array/values"/> <ListPreference android:key="@string/flower2Count" android:title="@string/settings_title2" android:summary="@string/settings_summary2" android:entries="@array/entries" android:entryValues="@array/values"/> <EditTextPreference android:key="@string/inputText" android:title="输入你喜欢的文字" android:summary="点击输入" android:dialogTitle="输入文字设置" /> <EditTextPreference android:key="@string/wordCount" android:title="一列显示的字符数" android:summary="请输入数字" android:dialogTitle="一列显示的字符数(请输入数字)" android:digits="0123456789" /> <PreferenceCategory android:title="恢复默认设置" > <CheckBoxPreference android:key="@string/reset" android:title="恢复默认设置" android:summaryOn="恢复默认设置" android:summaryOff="恢复默认设置" android:defaultValue="false" ></CheckBoxPreference> </PreferenceCategory> </PreferenceScreen>

这是一个我自己编写的简单动态壁纸效果图:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。