導航:首頁 > 操作系統 > android代碼風格

android代碼風格

發布時間:2025-09-08 23:15:04

① 如何將android應用設置成material風格

Android系統提供了三種Material Design風格的主題:@android:style/Theme.Material(暗版本)、@android:style/Theme.Material.Light(亮版本)和@android:style/Theme.Material.Light.DarkActionBar(亮版本帶有深色動作欄)。我們可以使用這三種主題來定義我們的應用主題。

要改變主題中的文字或背景顏色,可以訪問每個位置的名字,如下圖所示。我們也可以自定義這些主題,但這里僅作簡單介紹,更詳細的內容請自行探索。

要在較低版本的Android系統上使用Material Design風格,需要使用最新的支持庫(版本21)。直接將項目引入工程,或者使用gradle構建,並增加以下依賴:

dependencies {
compile 'com.android.support:appcompat-v7:+'
compile 'com.android.support:cardview-v7:+'
compile 'com.android.support:recyclerview-v7:+'
}

這樣,你的應用就可以享受到Material Design風格帶來的視覺體驗提升。不過,記得檢查應用在不同設備和Android版本上的表現,確保兼容性和用戶體驗。

使用Material Design風格不僅可以讓應用看起來更加現代化,還能提升用戶體驗。通過適當的自定義和優化,你可以讓你的應用在視覺和功能上達到最佳狀態。

在實際開發中,除了引入支持庫,你還需要確保應用的布局文件和代碼支持新的設計規范。這包括使用新的布局控制項,如CardView和RecyclerView,以及遵循Material Design的色彩和字體指導原則。

最後,記得測試你的應用,確保在不同設備和Android版本上的表現一致。Material Design風格的應用在視覺上更加吸引人,但在功能上也需要保持簡潔和直觀,以確保用戶能夠輕松地找到他們需要的功能。

通過不斷探索和實踐,你可以讓你的應用在視覺和功能上都達到最佳狀態。祝你在開發過程中取得成功!

② android怎麼修改系統dialog風格

1、編寫一個文本樣式。

DIALOG的標題是一個textview,在sytles.xml中,添加如下代碼來設置你自己的文本樣式:

?

<style name="DialogWindowTitle">

<item name="android:textSize">22sp</item>

<item name="android:textColor">@color/font_dark_grey</item>

</style>

2、設置對話框的標題主題。

上面的標題文本並不能直接設置為對話框的標題樣式。 我們還需要編寫一個表示標題的主題的style,在這里指定標題的文本樣式。代碼如下:

?

<style name="DialogWindowTitle.DeviceDefault">

<item name="android:maxLines">1</item>

<item name="android:scrollHorizontally">true</item>

<item name="android:textAppearance">@style/DialogWindowTitle</item>

</style>

3、設置對話框主題。

接下來,我們編寫我們的對話框主題,在這里指定標題的主題。由於一些屬性並不是public的,所以我們需要繼承自原來的某個style,代碼如下:

?

<!--Dialog主題-->

<style name="Theme.DeviceDefault.Dialog" parent="@android:style/Theme.DeviceDefault.Light.Dialog">

<item name="android:windowTitleStyle">@style/DialogWindowTitle.DeviceDefault</item>

</style>

4、自定義App的主題。

接下來,我們需要在我們的App theme中指定我們的對話框使用這種主題,所以需要定義一個App theme。同樣由於App theme的許多屬性並不是public的(比如下面要提到的標題下面的那條藍線),所以我們要繼承自一個原生的style。這里我根據程序需要選擇了Theme.Holo.Light.NoActionBar,代碼如下:

?

<style name="ParkingTheme" parent="@android:style/Theme.Holo.Light.NoActionBar">

<item name="android:dialogTheme">@style/Theme.DeviceDefault.Dialog</item>

</style>

5、指定App主題。

最後一步,我們需要在AndroidManifest.xml文件中,指定我們的app主題。這步很簡單,只需要在application標簽中指定android:theme的值即可,如下:

?

android:theme="@style/ParkingTheme"

不過這只是指定了Dialog的主題。如果是通過AlertDialog創建出來的對話框,主題還是原來的。所以我們還需要以下步驟。

7、編寫AlertDialog主題。

我們無法直接繼承系統主題里的AlertDialog的style。如把parent指定為Theme.DeviceDefault.Dialog.Alert,Theme.Holo.Dialog.Alert,Theme.DeviceDefault.Light.Dialog.Alert或Theme.Holo.Light.Dialog.Alert,都會導致編譯不過。所以我們需要繼承自Dialog的style。在這里我以Theme.Holo.Light.Dialog為例,代碼如下:

<!--AlderDialog主題-->

<style name="Theme.DeviceDefault.Dialog.Alert" parent="@android:style/Theme.Holo.Light.Dialog">

<item name="android:windowBackground">@android:color/transparent</item>

<item name="android:windowTitleStyle">@style/DialogWindowTitle.DeviceDefault</item>

<item name="android:windowContentOverlay">@null</item>

<item name="android:windowMinWidthMajor">@android:dimen/dialog_min_width_major</item>

<item name="android:windowMinWidthMinor">@android:dimen/dialog_min_width_minor</item>

</style>

在這里我參考了原生的alertDialog的style,設定了窗口背景為透明,以及windowContentOverlay為null這兩個重要屬性,否則你會看到在AlertDialog下面還有一層對話框的背景,或者是對話框的背景遮住了所有內容這樣的問題存在。

8、指定AlertDialog的主題。

我們需要在第4步所說的自定義的AppTheme中,添加一行代碼來指定要使用的AlertDialog的style,代碼如下:

?

<item name="android:alertDialogTheme">@style/Theme.DeviceDefault.Dialog.Alert</item>

9、修改標題下面的藍色線。

如果你修改了對話框的主題顏色,那麼標題下面的藍色的線肯定會讓你很郁悶。如果對話框較少,你可以選擇隱藏標題,然後自定義一個包含了標題的View來設置為對話框的內容。但是如果你的對話框有許多種,而且本來都是可以調用原來的API就來生成的話,要去定義這么多個帶標題的view,這樣做下來心裡肯定是很糾結的。

標題下面的藍色的線,並不是在Dialog或AlertDialog中設置或通過它們的style中定義的。它是定義在各種風格的dialog的layout當中,然後再在AppTheme裡面指定dialog的對應屬性。遺憾的是,目前我看到這幾個相關屬性還不是public的,不能自己設置,所以只有通過Java代碼來實現了。

表示這條藍色的線的叫做titleDivider,我們可以通過getResources()的API來獲取它的IP,然後設置顏色。代碼如下:

?

public static final void dialogTitleLineColor(Dialog dialog, int color) {

Context context = dialog.getContext();

int divierId = context.getResources().getIdentifier("android:id/titleDivider", null, null);

View divider = dialog.findViewById(divierId);

divider.setBackgroundColor(color);

閱讀全文

與android代碼風格相關的資料

熱點內容
安卓app怎麼設置圖標風格 瀏覽:287
程序員陸離跳水哪一集 瀏覽:595
linuxexpect命令定義變數 瀏覽:725
我的app軟體怎麼不能真機模擬 瀏覽:118
如何做識別顏色的app 瀏覽:279
股票盯盤系統android 瀏覽:295
pi幣app版本信息在什麼位置 瀏覽:30
安卓虎撲為什麼沒有推薦 瀏覽:126
彈簧壓縮量計算 瀏覽:62
比爾蓋茨評價加密幣 瀏覽:149
商家伺服器是干什麼用的 瀏覽:429
可以看網站源碼的手機瀏覽器 瀏覽:930
c語言編譯器下載蘋果 瀏覽:647
qt程序編譯如何生成release版本 瀏覽:426
centos7如何搭建ftp伺服器 瀏覽:801
全網自動網頁影視源碼 瀏覽:118
易語言程序打開禁止訪問文件夾 瀏覽:200
枚舉法求最小公倍數演算法流程圖 瀏覽:619
程序員大戰學霸 瀏覽:991
伺服器如何重啟網路服務 瀏覽:213