android風格設置
Ⅰ Android如何定製主題
目的:
為了加強用戶體驗,增強品牌效應,使我們的產品有自己獨特的風格,主題的定製將會是必然趨勢……
然而Android原生系統是不支持主題定製的,所以如何來定製主題,如何做得更好,需要大家集思廣益……
策略:
將介紹兩種定製主題的機制:
1.根據Android Configuration Qualifier機制,加入我們自己的JRDTheme定製。
2.用主題包的形式,根據用戶選擇不同的主題,而載入不同主題包中的資源。
基本原理:
首先介紹方式一:
Android Configuration Qualifier
Android 系統為一個項目提供了多套可供選擇的資源,通過命名特殊的資源文件夾來區別它們。系統在運行的時候,根據設備的當前配置為每個應用載入合適的資源。
這些不同的資源都是放在每個應用的res/目錄下面的,特殊的命名方式是-:
: 資源文件夾的名字,與默認資源文件夾保持一致
: 根據設備不同配置,需要使用的資源文件夾名字
Android系統根據優先順序的先後順序已經支持多種Configuration Qualifier,如圖1:
如何添加 Jrd Theme Resources
JrdTheme 的核心策略是當我們設定了不同的主題後,會自動的替換我們想要替換的資源(Framework&App)。具體步驟如下:
1. 工程師從UE哪裡獲得我們想要改變的主題資源,
2.把這些資源放到對應模塊的res/目錄下,以Contacts模塊為例,假如我們想要定製drawable、color、layout。
原來在Contacts模塊中默認的資源目錄如下:
res/
layout/
main.xml
info.xml
drawable/
icon.png
values/
colors.xml
定製後的資源目錄如下:
res/
layout/
main.xml
info.xml
layout-jrdthemexxx/
main.xml
info.xml
drawable/
icon.png
drawable-jrdthemexxx/
icon.png
values/
colors.xml
values-jrdthemexxx/
colors.xml
Notes: jrdthemexxx 是其中一個 主題的 Qualifier,如果有多個主題,那麼將會有多個jrdthemexxx存在。
3.與原來一樣編譯這些模塊,push到手機中即可。
這只是一個guide ,具體實現還要細化…… 目前在diablo、beetle上面已經用這種方式實現了……我在smartiii上嘗試過,機制沒問題,但是改動的范圍太大了,比較麻煩。
方式二:
核心思想:系統中有多套主題資源包,並且應用可以用相同的資源ID來訪問不同資源包中對應的資源。 Android原生系統的資源訪問流程 對應用來說,資源訪問主要有下面三種方
式:
第一、比較普遍的方式是使用xml定義,並且通過AAPT工具生成一個R文件,列出資源的索引來讓Android系統自己去遍歷整個資源樹的方式來訪問。
第二、通過Resources介面來訪問,使用Resources類的getDrawable、getString等介面來獲取資源。
第三、通過AssetManager類的介面去訪問,使用這個類的open方法來返回一個InputStream對象得到資源。
其實這三個訪問方式只是Android資源訪問中整個流程中在不同層次對外提供的三個介面,到底層的實現都是殊途同歸的。
因此我們實際上需要修改的部分主幹是在訪問資源具體路徑前,按照當前系統主題設置訪問不同資源APK下的文件
即是把原生Android中資源ID和資源文件路徑之間一對一的關系改為一對多的關系。
例子如下:如果原有資源ID和資源文件路徑關系為:
R.drawable.image01 = 0x7F020001
通過系統的資源查找之後找到文件路徑為 /system/app/frameworks-res.apk下的res/drawable_hdpi/icon.png
在AssetManager native中去讀取資源並上傳。
那麼我們需要做的是在傳入路徑去讀取資源時把文件路徑替換為/data/app/SystemTheme01.apk下的res/drawable_hdpi/icon.png
Ⅱ android studio 怎麼修改布局風格
Android Studio的字體分代碼編輯區域設置和Android Studio的菜單字體設置。
1. Android Studio的菜單字體設置:
1. 【File】菜單-->打開【Settings】選項;
2. 工具欄中選中【Settings】圖標打開。
3. 點擊Appearance選項,在size處選擇大小即可。
2. Android Studio的字體分代碼編輯區域設置:
1. 在設置頁面選擇Editor->Editor&Fonts
2. 在Size處選擇大小即可。
Ⅲ 如何將android應用設置成material風格
android提供了三種Material Design風格Theme。
分別是:
@android:style/Theme.Material (dark version)
@android:style/Theme.Material.Light (light version)
@android:style/Theme.Material.Light.DarkActionBar
Light material theme
Light material theme
Dark material theme
Dark material theme
我們可以以這三個Theme來定義我們的Theme,比如:
我們可以修改每個位置的字或者背景的顏色,每個位置的名字如下圖所示:
Customizing the material theme
我就簡單的介紹一下,更具體的自己探索吧。
較低版本使用Material Design風格
要在較低版本上面使用Material Design風格,則需要使用最新的support library(version 21),可以直接把項目引入工程,或者使用gradle構建,增加compiledependency:
dependencies {
compile 'com.android.support:appcompat-v7:+'
compile 'com.android.support:cardview-v7:+'
compile 'com.android.support:recyclerview-v7:+'
Ⅳ 如何修改Android App的樣式風格
android中可以自定義主題和風格。風格,也就是style,我們可以將一些統一的屬性拿出來,比方說,長,寬,字體大小,字體顏色等等。可以在res/values目錄下新建一個styles.xml的文件,在這個文件裡面有resource根節點,在根節點裡面添加item項,item項的名字就是屬性的名字,item項的值就是屬性的值,如下所示:
復制代碼 代碼如下:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="MyText" parent="@android:style/TextAppearance">
<item name="android:textColor">#987456</item>
<item name="android:textSize">24sp</item>
</style>
</resources>
style中有一個父類屬性parent, 這個屬性是說明當前的這個style是繼承自那個style的,當然這個style的屬性值中都包含那個屬性中的,你也可以修改繼承到的屬性的值,好了,style完成了,我們可以測試一下效果了,先寫一個布局文件,比如說一個TextView什麼的,可以用到這個style的。這里我就寫一個EditText吧。下面是布局文件:
復制代碼 代碼如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas。android。com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<EditText
android:id="@+id/myEditText"
android:layout_width="match_parent"
android:layout_height="match_parent"
style="@style/MyText"
android:text="測試一下下"/>
</LinearLayout>
說完了style,下面就說說Theme,Theme跟style差不多,但是Theme是應用在Application或者Activity裡面的,而Style是應用在某一個View裡面的,還是有區別的,好了,廢話不多說,還是看代碼吧。下面的是style文件:
復制代碼 代碼如下:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="MyText" parent="@android:style/TextAppearance">
<item name="android:textColor">#987456</item>
<item name="android:textSize">24sp</item>
</style>
<style parent="@android:style/Theme" name="CustomTheme">
<item name="android:windowNoTitle">true</item>
<item name="android:windowFrame">@drawable/icon</item>
<item name="android:windowBackground">?android:windowFrame</item>
</style>
</resources>
style中有一個父類屬性parent, 這個屬性是說明當前的這個style是繼承自那個style的,當然這個style的屬性值中都包含那個屬性中的,你也可以修改繼承到的屬性的值,好了,style完成了,我們可以測試一下效果了,先寫一個布局文件,比如說一個TextView什麼的,可以用到這個style的。這里我就寫一個EditText吧。下面是布局文件:
復制代碼 代碼如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas。android。com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<EditText
android:id="@+id/myEditText"
android:layout_width="match_parent"
android:layout_height="match_parent"
style="@style/MyText"
android:text="測試一下下"/>
</LinearLayout>
說完了style,下面就說說Theme,Theme跟style差不多,但是Theme是應用在Application或者Activity裡面的,而Style是應用在某一個View裡面的,還是有區別的,好了,廢話不多說,還是看代碼吧。下面的是style文件:
復制代碼 代碼如下:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="MyText" parent="@android:style/TextAppearance">
<item name="android:textColor">#987456</item>
<item name="android:textSize">24sp</item>
</style>
<style parent="@android:style/Theme" name="CustomTheme">
<item name="android:windowNoTitle">true</item>
<item name="android:windowFrame">@drawable/icon</item>
<item name="android:windowBackground">?android:windowFrame</item>
</style>
</resources>
可以看到這里寫了一個繼承自系統默認的Theme的主題,裡面有3個屬性,這里強調一下第三個屬性的值的問題,這里打個問號,然後加前面的一個item的名字表示引用的是那個名字的值,也就是那個名字對應的圖片。
然後我們在Manifest.xml裡面的Application裡面加一個Theme的屬性,這個屬性對應的就是我們上面寫的Theme。
復制代碼 代碼如下:
<application android:icon="@drawable/icon" android:label="@string/app_name"
android:theme="@style/CustomTheme">
<activity android:name=".TestStyle"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
上面的代碼沒有標題欄,背景和fram都是我們設置的圖片。當然也可以在代碼中設置主題:
復制代碼 代碼如下:
package com.test.shang;
import android.app.Activity;
import android.os.Bundle;
public class TestStyle extends Activity {
@Override
protected void onCreate (Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setTheme(R.style.CustomTheme);
setContentView(R.layout.test_style);
}
}
Ⅳ android studio mac版本怎麼設置界面風格
1在Android Studio裡面想設置代碼風格,其實很簡單可以直接進入settings,
2然後搜索CodeStyle選擇Java進入如下界面在這里選擇Wrapping and Braces
3在Braces placement下可以看到In class declaration, In method declaration, Other對應的是End of line
4這里的意思是在類定義,方法定義和其他需要{}的地方使用的是行尾式
5設置完成後點擊Apply即可生效
Ⅵ 如何設計自己的android應用主題風格
•android:theme="@android:style/Theme.Dialog" 將一個Activity顯示為能話框模式
•android:theme="@android:style/Theme.NoTitleBar" 不顯示應用程序標題欄
•android:theme="@android:style/Theme.NoTitleBar.Fullscreen" 不顯示應用程序標題欄,並全屏
•android:theme="Theme.Light" 背景為白色
•android:theme="Theme.Light.NoTitleBar" 白色背景並無標題欄
•android:theme="Theme.Light.NoTitleBar.Fullscreen" 白色背景,無標題欄,全屏
•android:theme="Theme.Black" 背景黑色
•android:theme="Theme.Black.NoTitleBar" 黑色背景並無標題欄
•android:theme="Theme.Black.NoTitleBar.Fullscreen" 黑色背景,無標題欄,全屏
•android:theme="Theme.Wallpaper" 用系統桌面為應用程序背景
•android:theme="Theme.Wallpaper.NoTitleBar" 用系統桌面為應用程序背景,且無標題欄
•android:theme="Theme.Wallpaper.NoTitleBar.Fullscreen" 用系統桌面為應用程序背景,無標題欄,全屏
•android:theme="Translucent" 半透明
•android:theme="Theme.Translucent.NoTitleBar" 半透明、無標題欄
•android:theme="Theme.Translucent.NoTitleBar.Fullscreen" 半透明、無標題欄、全屏
•android:theme="Theme.Panel"
•android:theme="Theme.Light.Panel"
Ⅶ 如何修改Android App的樣式風格
android中可以自定義主題和風格。風格,也就是style,我們可以將一些統一的屬性拿出來,比方說,長,寬,字體大小,字體顏色等等。可以在res/values目錄下新建一個styles.xml的文件,在這個文件裡面有resource根節點,在根節點裡面添加item項,item項的名字就是屬性的名字,item項的值就是屬性的值,如下所示:
package com.test.shang;
import android.app.Activity;
import android.os.Bundle;
public class TestStyle extends Activity {
@Override
protected void onCreate (Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setTheme(R.style.CustomTheme);
setContentView(R.layout.test_style);
}
}
Ⅷ 如何讓win10電腦有安卓風格
1.首先,在電腦的右下角右擊一下,然後在下面單擊「所有設置」按鈕;
2.在彈出的窗口中,單擊一下「個性化」按鈕;
3.在左側單擊「主題」選項,然後在旁邊選擇「主題設置」這行藍色的小字;
4.在彈出的窗口中,在中間的框里選擇您自己想要設置的主題風格,就可以方便、簡單、快速地更改操作系統的主題風格了。
Ⅸ android怎麼在代碼中設置字體細風格
1.可以通過Stringsource="這只是一個測試,測試<u>下劃線</u>、<i>斜體字
</i>、<fontcolor='red'>紅色字</font>的格式";然後setText;
2還可以通過SpannableString 這個
msp = new SpannableString("字體測試字體大小一半兩倍前景色背景色正常粗體斜體粗斜體下劃線刪除線x1x2電話郵件網站簡訊彩信地圖X軸綜合/bot");
//設置字體(default,default-bold,monospace,serif,sans-serif)
msp.setSpan(new TypefaceSpan("monospace"), 0, 2, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
msp.setSpan(new TypefaceSpan("serif"), 2, 4, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
//設置字體大小(絕對值,單位:像素)
msp.setSpan(new AbsoluteSizeSpan(20), 4, 6, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
msp.setSpan(new AbsoluteSizeSpan(20,true), 6, 8, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //第二個參數boolean dip,如果為true,表示前面的字體大小單位為dip,否則為像素,同上。
//設置字體大小(相對值,單位:像素) 參數表示為默認字體大小的多少倍
msp.setSpan(new RelativeSizeSpan(0.5f), 8, 10, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //0.5f表示默認字體大小的一半
msp.setSpan(new RelativeSizeSpan(2.0f), 10, 12, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //2.0f表示默認字體大小的兩倍
//設置字體前景色
msp.setSpan(new ForegroundColorSpan(Color.MAGENTA), 12, 15, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //設置前景色為洋紅色
//設置字體背景色
msp.setSpan(new BackgroundColorSpan(Color.CYAN), 15, 18, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //設置背景色為青色
//設置字體樣式正常,粗體,斜體,粗斜體
msp.setSpan(new StyleSpan(android.graphics.Typeface.NORMAL), 18, 20, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //正常
msp.setSpan(new StyleSpan(android.graphics.Typeface.BOLD), 20, 22, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //粗體
msp.setSpan(new StyleSpan(android.graphics.Typeface.ITALIC), 22, 24, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //斜體
msp.setSpan(new StyleSpan(android.graphics.Typeface.BOLD_ITALIC), 24, 27, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //粗斜體
//設置下劃線
msp.setSpan(new UnderlineSpan(), 27, 30, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
//設置刪除線
msp.setSpan(new StrikethroughSpan(), 30, 33, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
//設置上下標
msp.setSpan(new SubscriptSpan(), 34, 35, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //下標
msp.setSpan(new SuperscriptSpan(), 36, 37, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //上標
//超級鏈接(需要添加setMovementMethod方法附加響應)
msp.setSpan(new URLSpan("tel:4155551212"), 37, 39, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //電話
msp.setSpan(new URLSpan("mailto:[email protected]"), 39, 41, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //郵件
msp.setSpan(new URLSpan("http://www.2cto.com"), 41, 43, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //網路
msp.setSpan(new URLSpan("sms:4155551212"), 43, 45, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //簡訊 使用sms:或者smsto:
msp.setSpan(new URLSpan("mms:4155551212"), 45, 47, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //彩信 使用mms:或者mmsto:
msp.setSpan(new URLSpan("geo:38.899533,-77.036476"), 47, 49, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //地圖
//設置字體大小(相對值,單位:像素) 參數表示為默認字體寬度的多少倍
msp.setSpan(new ScaleXSpan(2.0f), 49, 51, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //2.0f表示默認字體寬度的兩倍,即X軸方向放大為默認字體的兩倍,而高度不變
//設置字體(依次包括字體名稱,字體大小,字體樣式,字體顏色,鏈接顏色)
具體可以參看http://blog.csdn.net/knxw0001/article/details/8838831
Ⅹ Android如何設置頂部狀態欄顏色(主題)
在Android中我們經常需要設置屏幕頂部狀態欄的主題和應用頁面保持同一風格,本文介紹幾種常用的設置方案:
首先給出一張圖:
2 2通過上圖,我們可以通過設置不同的屬性來達到控制不同位置顏色的目的,下面給出使用示例,修改res/values-19裡面的內容:
主要是設置 colorPrimary,colorPrimaryDark這兩個屬性的值來設置狀態欄的顏色,需要注意的是:
1:AndroidManifest.xml文件中的targetSdkVersion必須設置在 21 以上。
2.parent主題必須是 Theme.AppCompat 開頭,兼容包下的主題,所以必須一用 v7 包。
在頂部標題欄設置屬性值達到風格一致的目的
首先修改res/values-v19文件夾下的styles.xml文件內容如下(如果沒有可以新建一個):
然後設置頂部標題控制項的兩個屬性:
這時狀態欄會保持與設置fitsSystemWindow屬性的控制項的背景顏色一致。