導航:首頁 > 操作系統 > 安卓如何製作live

安卓如何製作live

發布時間:2024-01-19 13:57:41

1. android livewallpaper地球動態壁紙怎麼實現的

對於Android 2.1來說Live Wallpapers動態壁紙的加入為Android桌面加入了更好的動態效果。如何開發一個Android動態桌面呢? 下面Android123給大家一個詳細的步驟創建屬於你自己的Live Wallpaper吧。

1. 首先我使用Eclipse創建一個標準的Android工程這里package name我們使用cn.com.android123.cwj,然後進入工程的/res/文件夾,刪除layout這個文件夾,當然裡面的main.xml也會被刪除的,對於Live Wallpaper來說傳統的布局文件是不需要的。

2. 類似AppWidget一樣,我們可以加入動態壁紙的設置界面,我們在/res/文件夾中新建一個名為xml的文件夾,新建一個utf8編碼的xml文件,名為livewallpaper.xml,內容為

<?xml version="1.0" encoding="utf-8"?>
<wallpaper xmlns:android="http://schemas.android.com/apk/res/android"
android:settingsActivity="cn.com.android123.cwj.LiveWallpaperSettings"
android:thumbnail="@drawable/icon"/>
這里我們可以看到上面的節點名為wallpaper,而設置的界面為 cn.com.android123.cwj.LiveWallpaperSettings 這個Activity,而在添加動態壁紙時顯示圖標為/res/drawable/icon 這個文件,同時我們再創建一個xml文件用於LiveWallpaperSettings這個Activity的布局,我們起名為livewallpaper_settings.xml內容為
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
android:title="@string/livewallpaper_settings"
android:key="livewallpaper_settings">

<ListPreference
android:key="livewallpaper_testpattern"
android:title="標題"
android:summary="簡單描述"
android:entries="@array/livewallpaper_testpattern_names"
android:entryValues="@array/livewallpaper_testpattern_prefix"/>

<CheckBoxPreference android:key="livewallpaper_movement"
android:summary="動態描述"
android:title="動態標題"
android:summaryOn="動態測試"
android:summaryOff="靜止測試"/>
</PreferenceScreen>
3. 創建一個名為LiveWallpaper的類作為動態壁紙的主類,從WallpaperService父類繼承,這里我們可以像寫標准Android服務那樣開發
4. 新建類LiveWallpaperSettings從 PreferenceActivity 繼承實現我們的設置界面,代碼如下
public class LiveWallpaperSettings extends PreferenceActivity implements
SharedPreferences. {
@Override
protected void onCreate(Bundle icicle) {
super.onCreate(icicle);
getPreferenceManager().setSharedPreferencesName(
LiveWallpaper.SHARED_PREFS_NAME);
addPreferencesFromResource(R.xml.livewallpaper_settings);
getPreferenceManager().getSharedPreferences()
.register(this);
}

@Override
protected void onResume() {
super.onResume();
}

@Override
protected void onDestroy() {
getPreferenceManager().getSharedPreferences()
.unregister(this);
super.onDestroy();
}

public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,
String key) {
}
}
同時仍然在androidmanifest.xml中加入 下面的代碼。
<activity android:label="@string/livewallpaper_settings"
android:name=".LiveWallpaperSettings"
android:theme="@android:style/Theme.Light.WallpaperSettings"
android:exported="true"
android:icon="@drawable/icon">
</activity>
5. 由於Android動態壁紙是2.1 API Level為7才加入的,所以設置好minSDK以及需要設備支持動態壁紙,我們在androidmanifest.xml中加入
<uses-sdk android:minSdkVersion="7" />
<uses-feature android:name="android.software.live_wallpaper" />
6. 對於文中ListPreference用到的數組,及代碼中涉及的顏色數組,我們在/res/values/ 文件夾中創建一個名為testpatterns.xml 的文件,內容為
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string-array name="livewallpaper_testpattern_names">
<item>"Color Bars 16x9"</item>
<item>"Color Bars 4x3"</item>
<item>"EBU Color Bars"</item>
</string-array>

<string-array name="livewallpaper_testpattern_prefix">
<item>"smpte"</item>
<item>"bars"</item>
<item>"ebu"</item>
</string-array>

<integer-array name="smptecolors">
<item>0xFF696969</item>
<item>0xFFC1C1C1</item>
<item>0xFFC1C100</item>
<item>0xFF00C1C1</item>
<item>0xFF00C100</item>
<item>0xFFC100C1</item>
<item>0xFFC10000</item>
<item>0xFF0000C1</item>
<item>0xFF696969</item>
<item>0xFF00FFFF</item>
<item>0xFFFFFF00</item>
<item>0xFF052550</item>
<item>0xFF36056D</item>
<item>0xFF0000FF</item>
<item>0xFFFF0000</item>
<item>0xFFC1C1C1</item>
<item>0xFF2B2B2B</item>
<item>0xFF050505</item>
<item>0xFFFFFFFF</item>
<item>0xFF050505</item>
<item>0xFF000000</item>
<item>0xFF050505</item>
<item>0xFF0A0A0A</item>
<item>0xFF050505</item>
<item>0xFF0D0D0D</item>
<item>0xFF050505</item>
<item>0xFF2b2b2b</item>
</integer-array>

<integer-array name="barscolors">
<item>0xFFC0C0C0</item>
<item>0xFFC0C000</item>
<item>0xFF00C0C0</item>
<item>0xFF00C000</item>
<item>0xFFC000C0</item>
<item>0xFFC00000</item>
<item>0xFF0000C0</item>
<item>0xFF0000C0</item>
<item>0xFF131313</item>
<item>0xFFC000C0</item>
<item>0xFF131313</item>
<item>0xFF00C0C0</item>
<item>0xFF131313</item>
<item>0xFFC0C0C0</item>
<item>0xFF00214C</item>
<item>0xFFFFFFFF</item>
<item>0xFF32006A</item>
<item>0xFF131313</item>
<item>0xFF090909</item>
<item>0xFF131313</item>
<item>0xFF1D1D1D</item>
<item>0xFF131313</item>
</integer-array>

<integer-array name="ebucolors">
<item>0xFFBFBFBF</item>
<item>0xFFBFBF00</item>
<item>0xFF00BFBF</item>
<item>0xFF00BF00</item>
<item>0xFFBF00BF</item>
<item>0xFFBF0000</item>
<item>0xFF0000BF</item>
<item>0xFF000000</item>
</integer-array>
</resources>

轉載

閱讀全文

與安卓如何製作live相關的資料

熱點內容
安卓游戲充錢充錯帳號怎麼辦 瀏覽:203
有什麼是綁定手機號的app 瀏覽:496
phpredis事務 瀏覽:935
陰陽師pad怎麼登錄安卓賬號 瀏覽:734
bitlocker加密後讀取不了 瀏覽:176
演算法設計是指流程圖嗎 瀏覽:168
javaboot如何防止反編譯 瀏覽:118
python復合數據結構視頻 瀏覽:146
培訓學校需要用什麼雲伺服器 瀏覽:721
衛星鍋加密卡那裡收購 瀏覽:58
小米工具文件夾選項在哪裡 瀏覽:55
md5磁碟加密 瀏覽:642
單片機x地址 瀏覽:208
回車鍵失靈運行命令如何使用 瀏覽:984
電腦一鍵解壓縮的軟體 瀏覽:171
怎麼關閉手機通訊錄對外app 瀏覽:370
我的世界如何強行進入一個滿人的伺服器 瀏覽:653
什麼app可以查詢會考成績 瀏覽:389
程序員能創造的價值 瀏覽:261
伺服器上的redis是什麼意思 瀏覽:381