+ All Categories
Home > Self Improvement > Themes and Styles in Android

Themes and Styles in Android

Date post: 28-Nov-2014
Category:
Upload: mready
View: 1,284 times
Download: 0 times
Share this document with a friend
Description:
 
22
Styles and Themes - presentation - by Mihaela Calinescu & Emilia Dobrin
Transcript
Page 1: Themes and Styles in Android

Styles and Themes

- presentation -

by Mihaela Calinescu & Emilia Dobrin

Page 2: Themes and Styles in Android

CUPRINS

• Styles

o Ce reprezintă

o Definire şi moştenire

o Proprietăţi

• Themes

o Ce reprezintă

o Declarare, moştenire

o Setarea temei

• Exemple

Page 3: Themes and Styles in Android

Styles

Page 4: Themes and Styles in Android

• Ce reprezintă un style in Android?

Un style este o colecţie de proprietăţi care

specifică aspectul si formatul unui View sau

ale unei ferestre. De exemplu un style poate

specifica proprietăţi precum :

- height

- padding

- font color

- font size

- background color

- si multe altele.

Page 5: Themes and Styles in Android

• Cum definim şi cum folosim un

style?

Un style este definit într-un XML resource care

este diferit de XML-ul care specifică layout-ul.

Acesta te ajută să separi design-ul de

conţinut (analog css-ului - cascade

spreadsheet- în web design)

Page 6: Themes and Styles in Android

De exemplu, folosind un style putem lua acest

XML layout

pe care îl putem transforma în

Page 7: Themes and Styles in Android

Pentru a crea un set se stiluri, se salvează un

XML file în folderul res/values/ din proiect.

Root node-ul fisierului .xml creat va fi

<resources>. It's a must!

Un exemplu de fişier cu un singur style ar fi

următorul:

Page 8: Themes and Styles in Android

Style properties

De exemplu, unul dintre atribute este android:inputType.

Aşa că, acolo unde in mod normal ai poziţiona acest

atribut într-un element <EditText>:

am putea crea un style pentru EditText element care să

includă acest atribut :

deci xml-ul nostru poate acum implementa acest style:

Page 9: Themes and Styles in Android

Themes

Page 10: Themes and Styles in Android

Ce reprezintă o temă in Android?

• O temă este un set de proprietăţi de

formatare care pot fi aplicate ca unitate pe un

activity sau pe întreaga aplicaţie.

• Temele din Android sunt <resources>

• Există teme default

• Pot fi create teme customizate

Page 11: Themes and Styles in Android

Cum declarăm o temă?

•Asemănător stilurilor, într-un <style> element

•Exemplu:

Page 12: Themes and Styles in Android

Ştiaţi că . . .

... puteţi folosi referinţa la o resursă prin item

name folosind unul din simbolurile "@", "?"

?

• @ este folosit pentru referinţe definite in alt

fişier din cadrul proiectului sau din Android

framework

• ? este folosit pentru referinţe la elemente din

acelaşi fişier

• sunt folosite doar in fişierele XML

Page 13: Themes and Styles in Android

Moştenire

• Atât stilurile, cât şi temele, pot moşteni unele

existente, cu scopul de a modifica anumite

caracteristici sau pentru a adăuga proprietăţi

noi.

• Cum facem asta?

o folosind "parent"

Page 14: Themes and Styles in Android

• Putem, de asemenea, moşteni un stil sau o

temă din cele create chiar de noi.

Pentru aceasta putem folosi elementul "."

Cum?

• Aici am mostenit stilul CodeFont si i-am

atribuit o noua proprietate, culoarea textului

(rosu).

Page 15: Themes and Styles in Android

Putem face asta de oricâte ori, atribuind

stilurilor/temelor părinte noi proprietăţi, prin

simpla separare a numelor cu caracterul "."

Page 16: Themes and Styles in Android

Moştenire la Themes

• De ce trebuie sa ţinem cont?

o Compatibilitate între device-uri !!!

• Putem folosi teme holografice (Holo) pentru

aplicaţiile care rulează pe Android 3.0 (sau

mai mult) - API Level 11

Page 17: Themes and Styles in Android

• Trebuie să specificăm tipul de temă folosit

prin adăugarea declaraţiei acesteia şi în

folderul special creat pentru Android 3.0 +

/res/values-v11, in fişierul themes.xml.

• Vom folosi varianta Holo a temei din

Android.

• În funcţie de versiunea de Android folosita,

dispozitivul îşi va selecta tema, daca

aceasta a fost declarată în ambele fişiere.

Page 18: Themes and Styles in Android

Exemplu:

• /res/values/themes.xml

• /res/values-v11/themes.xml

Page 19: Themes and Styles in Android

Setarea unei teme

• Modificăm AndroidManifest.xml

o pentru setarea temei pe întreaga aplicaţie:

<application android:theme="@style/CustomTheme">

• pentru setarea temei pe un activity al aplicaţiei:

<activity android:theme="@android:style/Theme.Dialog">

Page 20: Themes and Styles in Android

• Sau aplicăm tema direct din cod.

• Trebuie ţinut cont că acest lucru trebuie

făcut înainte de orice instanţiere de View în

context o de exemplu înainte de setContentView(View) şi

inflate(int, ViewGroup)

protected void onCreate(Bundle savedInstanceState)

{

super.onCreate(savedInstanceState);

...

setTheme(android.R.style.Theme_Light);

setContentView(R.layout.linear_layout_3);

}

Page 21: Themes and Styles in Android

Surse de inspiraţie

• http://developer.android.com/guide/topics/ui/themes.htm

l

• http://www.linuxtopia.org/online_books/android/devguid

e/guide/topics/ui/themes.html

• http://brainflush.wordpress.com/2009/03/15/understandi

ng-android-themes-and-styles/

• http://www.androidengineer.com/2010/06/using-themes-

in-android-applications.html

Page 22: Themes and Styles in Android

Vă mulţumim pentru atenţie!


Recommended