国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Android style(樣式) 和 theme(主題) 屬性

這篇具有很好參考價值的文章主要介紹了Android style(樣式) 和 theme(主題) 屬性。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

1. 定義

????????樣式和主題資源都可用于對Android UI組件進行“美化”,只要充分利用好這兩個屬性資源,我們可以開發(fā)出各種風格的應用界面。

????????style 樣式: 一個樣式相當于多個格式的集合,其他UI組件通過style屬性來指定樣式,樣式資源文件時放在/res/values/styles.xml目錄下,其根元素為<resources...../> , 該元素內(nèi)可包含多個<style..../>子元素,每個 <style.../>子元素定義一個樣式。

<style..../>元素指定如下兩個屬性

????????name : 指定樣式的名稱

????????parent : 指定繼承父類的樣式:

<resources>
    <style name="system.theme.test" parent="Theme.AppCompat.Light.NoActionBar">
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
    </style>
</resources>

????????theme 主題:與樣式資源相似,主題資源的xml文件也是放在/res/values/themes.xml,? XML文件同樣根元素為<resources...../>,同樣使用<style..../>元素來定義主題

<resources>
    <style name="Theme.DeskClock.Settings">
        <!-- Attributes from androidx.appcompat.appcompat -->
        <item name="actionBarStyle">@style/Widget.ActionBar</item>
        <item name="colorControlActivated">?attr/colorAccent</item>
        <item name="windowActionBar">true</item>
        <item name="windowNoTitle">false</item>
</resources>

2. 區(qū)別

? ? ? ? theme主題一般是作用于整個 Application 或 某個 Activity

? ? ? ? style 樣式一般作用于某個控件,比如Button Layout等

3. 使用注意點

? ? ? ? 主題在新建項目的時候在AndroidManifest.xml 中一般默認配置了

<application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
          // 默認主題
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
</application>

? ? 假如我們把?android:theme="@style/AppTheme" 去掉,就會報如下錯誤:

? ? 你必須要給這個app設定一個主題

E AndroidRuntime: Process: com.example.themeactivitytest, PID: 28833
E AndroidRuntime: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.themeactivitytest/com.example.themeactivitytest.MainActivit
y}: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.

? ? 如果你不想在AndoridManifest.xml文件中配置主題,也可以在onCreate()方法中通過代碼設定

 @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //步驟1. 設置主題
        setTheme(R.style.Theme_NoTitleBar_Fullscreen);
        //步驟2. 加載布局
        setContentView(R.layout.activity_main);
    }

如果這兩個步驟順序?qū)懛戳?,也會報:AndroidRuntime: Caused by: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity. 錯誤

4. 常用的主題

常見的主題風格有:
android:theme="@android:style/Theme.Dialog"  灰色背景 將一個Activity顯示為對話框模式

android:theme="@android:style/Theme.NoTitleBar" 灰色背景 不顯示應用程序標題欄

android:theme="@android:style/Theme.NoTitleBar.Fullscreen" 灰色背景,不顯示應用程序標題欄,并全屏

android:theme="@android:style/Theme.Light" 背景為白色

android:theme="@android:style/Theme.Light.NoTitleBar" 白色背景并無標題欄

android:theme="@android:style/Theme.Light.NoTitleBar.Fullscreen" 白色背景,無標題欄,全屏

android:theme="@android:style/Theme.Black" 背景黑色

android:theme="@android:style/Theme.Black.NoTitleBar" 黑色背景并無標題欄

android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" 黑色背景,無標題欄,全屏

android:theme="@android:style/Theme.Wallpaper" 用系統(tǒng)桌面為應用程序背景

android:theme="@android:style/Theme.Wallpaper.NoTitleBar" 用系統(tǒng)桌面為應用程序背景,且無標題欄

android:theme="@android:style/Theme.Wallpaper.NoTitleBar.Fullscreen" 用系統(tǒng)桌面為應用程序背景,無標題欄,全屏

android:theme="@android:style/Theme.Translucent"  半透明

android:theme="@android:style/Theme.Translucent.NoTitleBar" 半透明、無標題欄

android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen" 半透明、無標題欄、全屏

android:theme="@android:style/Theme.Panel"   面板風格顯示

如果配置為? ?android:theme="@android:style/Theme.NoDisplay"? 此界面不顯示,一般用于Activity傳遞純數(shù)據(jù),不需要界面顯示的場景

需要注意事項就是需要在onResume 生命周期方法之前調(diào)用finish() 方法結(jié)束掉此Activity,否則報錯:E AndroidRuntime: Caused by: java.lang.IllegalStateException: Activity? did not call
finish() prior to onResume() completing

5. 更多主題

? ? ? ? 可以查看源碼? ? ? ? ?樣式 和? 主題路徑:

? ? ? framework/base/core/res/res/values/themes.xml

? ? ? framework/base/core/res/res/values/themes_material.xml? ? ? ?M- design風格的

? ? ? framework/base/core/res/res/values/styles.xml ?

? ? ? framework/base/core/res/res/values/styles_material.xml? ? ? ??M- design風格的

android:theme="@android:style/Theme.Material.NoActionBar.Fullscreen"   M風格 無標題,全屏主題

android:theme="@android:style/Theme.Material.Light.Dialog"    Material風格 白色 Dialog主題

android:theme="@android:style/Theme.Material.Wallpaper"    Material風格 背景為壁紙的主題

android:theme="@android:style/Theme.Material.Settings"     Material風格類似設置模塊主界面
    

比較類似,根據(jù)實際需求配置主題

6、更新

#2023.01.06

//繼承系統(tǒng)內(nèi)建的style(繼承Framework中theme的屬性是需要“android:”開頭)
<style name="GreenText" parent="@android:style/TextAppearance">
    <item name="android:textColor">#00FF00</item>
</style>

//繼承自AppCompat下的style(繼承Support Library中theme的屬性是不需要“android:”開頭的)
<style name="Theme.ThemeActivity" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="android:textColor">#00FF00</item>
</style>

Material Color system
如果使用的是Material Theme,它提供了很多的 color attribute 使用:

colorPrimary : 顧名思義,就是主要的顏色,這個通常指得是 App 本身產(chǎn)品的代表色,通常也是品牌的主要視覺色
colorPrimaryVariant:主要顏色的變體,通常會從 colorPrimary 往較淡或較濃的色澤
colorOnPrimary:字面意思就是主要顏色上頭的顏色,這個顏色通常使用在背景色是主要顏色的元件上頭(例如字樣 Label 、icon 等)
colorSecondary:app 次要的品牌顏色,這些用於裝飾某些特定需要的 widget
colorSecondaryVariant:次要顏色的變體,也就是次要顏色偏暗或偏亮的樣式
colorOnSecondary:用於顯示於次要顏色上元件的顏色
colorError:顯示錯誤的顏色 (最常見的就是紅色)
colorOnError:在錯誤顏色上頭元件的顏色
colorSurface:表層顏色(就是 Sheet 的顏色)
colorOnSurface:在表層顏色上的的元件顏色
android:colorBackground:最底的背景色
colorOnBackground:用於對底背景色上頭的元件用的顏色
利用這些屬性,搭配上面的那些技巧,可以組合出很棒的效果。

Android style(樣式) 和 theme(主題) 屬性

?

引用私有style報錯:

AAPT: error: resource android:style/Theme.Leanback.Dialog is private.
error: failed linking references.

解決方法:

之前寫法:

@android:style/Theme.Leanback.Dialog? ? ?//報錯

改為引用私有資源:? ?加上*號

@*android:style/Theme.Leanback.Dialog? ? //正常使用


@*代表引用系統(tǒng)的非public資源。
?文章來源地址http://www.zghlxwxcb.cn/news/detail-411206.html

到了這里,關于Android style(樣式) 和 theme(主題) 屬性的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 【VUE】ArcoDesign之自定義主題樣式和命名空間

    【VUE】ArcoDesign之自定義主題樣式和命名空間

    Arco Design是什么? Arco Design 是由字節(jié)跳動推出的企業(yè)級產(chǎn)品的完整設計和開發(fā)解決方案前端組件庫 官網(wǎng)地址:https://arco.design/ 同時也提供了一套開箱即用的中后臺前端解決方案: Arco Design Pro (https://pro.arco.design/) Arco Design 樣式基于 less 技術棧,但也同 ElementPlus 默認主題,CS

    2024年02月08日
    瀏覽(90)
  • Android設置夜間模式的主題樣式

    在 Android 中設置夜間模式,你需要創(chuàng)建一個名為? values-night ?的資源文件夾,并在這個文件夾下放置一個與? values ?文件夾中的樣式文件相對應的主題配置文件。這樣系統(tǒng)會根據(jù)設備的當前模式(日間或夜間)自動選擇合適的主題。 以下是如何設置夜間模式主題的基本步驟:

    2024年01月18日
    瀏覽(38)
  • sheetJs / xlsx-js-style 純前端實現(xiàn)導出 excel 表格及自定義單元格樣式

    sheetJs / xlsx-js-style 純前端實現(xiàn)導出 excel 表格及自定義單元格樣式

    xlsx 地址:https://www.npmjs.com/package/xlsx SheetJs 地址:https://docs.sheetjs.com/docs/ xlsx-js-style 地址:https://www.npmjs.com/package/xlsx-js-style !cols 設置列寬 cols 為一個對象數(shù)組,依次表示每一列的寬度 wpx 字段表示以像素為單位,wch 字段表示以字符為單位 hidden 如果為真,則隱藏該列 !rows 設

    2024年02月06日
    瀏覽(27)
  • 微信小程序自定義主題顏色【狀態(tài)欄tab樣式同步更改】

    微信小程序自定義主題顏色【狀態(tài)欄tab樣式同步更改】

    ?此功能使用js控制變量 調(diào)整顏色值,賦值給css顏色達到切換自定義顏色效果 1.創(chuàng)建公共樣式userStyle.js文件,通過定義style1和style2來控制全局顏色改變。 注意:顏色值務必為十六進制,避免API不兼容顏色 2.在index.js中引入userColor并放入data中。 打印userColor? ?? 3.index.wxml中將變

    2024年02月03日
    瀏覽(26)
  • 從零用VitePress搭建博客教程(4) – 如何自定義首頁布局和主題樣式修改?

    從零用VitePress搭建博客教程(4) – 如何自定義首頁布局和主題樣式修改?

    接上一節(jié): 從零用VitePress搭建博客教程(3) - VitePress頁腳、標題logo、最后更新時間等相關細節(jié)配置 有時候覺得自帶的樣式不好看,想自定義,首先我們在docs/.vitePress新建一個theme文件夾,用來存放自定義布局和主題修改的相關文件,如下所示 theme下再新建custom.css 和 index.js c

    2024年02月08日
    瀏覽(26)
  • flutter開發(fā)實戰(zhàn)-Theme主題切換

    flutter開發(fā)實戰(zhàn)-Theme主題切換

    flutter開發(fā)實戰(zhàn)-Theme主題切換 之前做的應用中有用到Theme主題切換,一直沒有整理,這里整理一下。 使用的是Android studio // 提供五套可選主題色 在Main.dart入口的MaterialApp 當主題切換后,Provider會通知到對應的頁面Build,就會顯示對應的主題。 主題切換頁面 flutter開發(fā)實戰(zhàn)-Them

    2024年02月16日
    瀏覽(30)
  • IntelliJ IDEA 常用設置 主題顏色模式、字體、樣式、背景自定義顏色及其背景圖片(圖文步驟)

    IntelliJ IDEA 常用設置 主題顏色模式、字體、樣式、背景自定義顏色及其背景圖片(圖文步驟)

    這里已 IntelliJ IDEA 2018.2.8 版本為例(本人已將主題設置成了暗色主題): 點擊 file﹥setting? 打開設置 點擊 Editor﹥Color Scheme﹥Color Scheme Font 主要的操作有主代碼字體,字體字號大小,字體行間距,非主代碼字體 ? 主要的操作有顏色,斜體,加粗,背景,下劃線,刪除線,邊框

    2023年04月16日
    瀏覽(31)
  • 主題狗themes.yhz610.com-精選上百種優(yōu)秀開源網(wǎng)站主題、博客主題、商城模板

    主題狗themes.yhz610.com-精選上百種優(yōu)秀開源網(wǎng)站主題、博客主題、商城模板

    說明 主題狗themes.yhz610.com 精選上百種優(yōu)秀開源網(wǎng)站主題、博客主題、商城模板。 類型包含 hexo 、jekyll 、hugo 、next 、vuepress 、gatsby 、wordpress 等等 主題狗- themes.dog 支持 PWA ,歡迎添加至手機桌面 為什么做此項目 現(xiàn)在很少有逛到純網(wǎng)站主題分享的網(wǎng)站,不是付費就是廣告或者

    2024年02月19日
    瀏覽(25)
  • 實現(xiàn)圖片點擊切換、通過classList修改樣式、操作表單元素屬性、自定義屬性
  • 如何下載IDEA主題插件Material Theme UI?

    如何下載IDEA主題插件Material Theme UI?

    1、打開IDEA插件官網(wǎng):點擊這里,選擇IDEA對應的版本下載。我的IDEA版本是2021.3,即我應下載對應的版本6.16.2 2、分別點擊IDEA左上角 File - Settings - Plugins - 設置 - install Plugin from Disk… ,從你的電腦里導入剛下載的壓縮包Material_Theme_UI-6.16.2 3、( 注意 :路徑不能有中文)我的路

    2024年04月26日
    瀏覽(34)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包