[flisol] embelezando o android – 2013

46
eee19.com Embelezando o Android Douglas Drumond [email protected]

Upload: douglas-drumond

Post on 17-May-2015

287 views

Category:

Technology


1 download

DESCRIPTION

Palestra ministrada no FLISOL Campinas 2013

TRANSCRIPT

Page 1: [FLISOL] Embelezando o Android – 2013

eee19.com

Embelezando o Android

Douglas [email protected]

Page 2: [FLISOL] Embelezando o Android – 2013

eee19.com

Importância de uma boa interface

Page 3: [FLISOL] Embelezando o Android – 2013

eee19.com

Page 4: [FLISOL] Embelezando o Android – 2013

eee19.com

Page 5: [FLISOL] Embelezando o Android – 2013

eee19.com

Design

Page 6: [FLISOL] Embelezando o Android – 2013

eee19.com

Page 7: [FLISOL] Embelezando o Android – 2013

eee19.com

Page 8: [FLISOL] Embelezando o Android – 2013

eee19.com

Page 9: [FLISOL] Embelezando o Android – 2013

eee19.com

AVISO

Page 10: [FLISOL] Embelezando o Android – 2013

eee19.com

AVISO"With great power comes great responsibility"

Page 11: [FLISOL] Embelezando o Android – 2013

eee19.com

Aplicativo

Page 12: [FLISOL] Embelezando o Android – 2013

eee19.com

Formas

Page 13: [FLISOL] Embelezando o Android – 2013

eee19.com

XML

Page 14: [FLISOL] Embelezando o Android – 2013

eee19.com

<shape>

Page 15: [FLISOL] Embelezando o Android – 2013

eee19.com

android:shape=…

• oval!

• rectangle!

• line!

• ring

Page 16: [FLISOL] Embelezando o Android – 2013

eee19.com

Page 17: [FLISOL] Embelezando o Android – 2013

eee19.com

rectangle

<?xml version="1.0" encoding="utf-8"?>

<shape xmlns:android="http://schemas.android.com/apk/res/android"

android:shape="rectangle" >

<solid android:color="#0064A0" />

!</shape>

Page 18: [FLISOL] Embelezando o Android – 2013

eee19.com

Page 19: [FLISOL] Embelezando o Android – 2013

eee19.com

rectangle

<?xml version="1.0" encoding="utf-8"?>

<shape xmlns:android="http://schemas.android.com/apk/res/android"

android:shape="rectangle" >

<solid android:color="#0064A0" />

<corners android:radius="15dp" /> !</shape>

Page 20: [FLISOL] Embelezando o Android – 2013

eee19.com

Page 21: [FLISOL] Embelezando o Android – 2013

eee19.com

button

<selector xmlns:android="http://schemas.android.com/apk/res/android" > <item android:state_pressed="true" android:drawable="@drawable/button_pressed" /> <item android:state_focused="true" android:drawable="@drawable/button_focused" /> <item android:drawable="@drawable/button_normal" /> </selector>

Page 22: [FLISOL] Embelezando o Android – 2013

eee19.com

res/drawable

• button_focused!

• button_normal!

• button_pressed!

• button

Page 23: [FLISOL] Embelezando o Android – 2013

eee19.com

activity_main.xml

<Button android:id="@+id/view3" android:layout_width="120dp" android:layout_height="80dp" android:layout_marginTop="64dp"

android:background="@drawable/button" android:text="@string/button_label"

/>

Page 24: [FLISOL] Embelezando o Android – 2013

eee19.com

activity_main.xml

<Button android:id="@+id/view3" android:layout_width="120dp" android:layout_height="80dp" android:layout_marginTop="64dp"

android:background="@drawable/button" android:text="@string/button_label"

android:textColor="@drawable/button_caption" />

Page 25: [FLISOL] Embelezando o Android – 2013

eee19.com

button_caption.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android" > <item android:state_pressed="true" android:color="#0FF" /> <item android:state_focused="true" android:color="#FFF" /> <item android:color="#FFF" /> </selector>

Page 26: [FLISOL] Embelezando o Android – 2013

eee19.com

Page 27: [FLISOL] Embelezando o Android – 2013

eee19.com

XML Bitmap<?xml version="1.0" encoding="utf-8"?> <bitmap     xmlns:android="http://schemas.android.com/apk/res/android"     android:src="@[package:]drawable/drawable_resource"     android:antialias=["true" | "false"]     android:dither=["true" | "false"]     android:filter=["true" | "false"]     android:gravity=["top" | "bottom" | "left" | "right" | "center_vertical" |                       "fill_vertical" | "center_horizontal" | "fill_horizontal" |                       "center" | "fill" | "clip_vertical" | "clip_horizontal"]     android:tileMode=["disabled" | "clamp" | "repeat" | "mirror"] />

Page 28: [FLISOL] Embelezando o Android – 2013

eee19.com

XML Bitmap

<?xml version="1.0" encoding="utf-8"?> <bitmap     xmlns:android="http://schemas.android.com/apk/res/android"     android:src="@[package:]drawable/drawable_resource"     android:antialias=["true" | "false"]     android:dither=["true" | "false"]     android:filter=["true" | "false"]     android:gravity=["top" | "bottom" | "left" | "right" | "center_vertical" |                       "fill_vertical" | "center_horizontal" | "fill_horizontal" |                       "center" | "fill" | "clip_vertical" | "clip_horizontal"]

    android:tileMode=["disabled" | "clamp" | "repeat" | "mirror"] />

Page 29: [FLISOL] Embelezando o Android – 2013

eee19.com

XML Bitmap repeat

Page 30: [FLISOL] Embelezando o Android – 2013

eee19.com

XML Bitmap mirror

Page 31: [FLISOL] Embelezando o Android – 2013

eee19.com

Custom font

Typeface type = Typeface.createFromAsset(getAssets(), "fonts/Chalkboard.ttc");

Page 32: [FLISOL] Embelezando o Android – 2013

eee19.com

Icon font

Page 33: [FLISOL] Embelezando o Android – 2013

eee19.com

developer.android.com

Page 34: [FLISOL] Embelezando o Android – 2013

eee19.com

developer.android.com

Page 35: [FLISOL] Embelezando o Android – 2013

eee19.com

developer.android.com/guide/topics/resources/drawable-resource.html

Page 36: [FLISOL] Embelezando o Android – 2013

eee19.com

Agora um exemplo de componente

Page 37: [FLISOL] Embelezando o Android – 2013

eee19.com

SlidingMenuhttps://github.com/jfeinstein10/slidingmenu

Page 38: [FLISOL] Embelezando o Android – 2013

eee19.com

SlidingMenu

• Foursquare!

• Rdio!

• 9GAG!

• Wunderlist 2!

• Falcon Pro!

• …

Page 39: [FLISOL] Embelezando o Android – 2013

eee19.com

Page 40: [FLISOL] Embelezando o Android – 2013

eee19.com

SlidingMenupublic class SlidingExample extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setTitle(R.string.attach); // set the content view setContentView(R.layout.content); // configure the SlidingMenu SlidingMenu menu = new SlidingMenu(this); menu.setMode(SlidingMenu.LEFT); menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN); menu.setShadowWidthRes(R.dimen.shadow_width); menu.setShadowDrawable(R.drawable.shadow); menu.setBehindOffsetRes(R.dimen.slidingmenu_offset); menu.setFadeDegree(0.35f); menu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT); menu.setMenu(R.layout.menu); } }

Page 41: [FLISOL] Embelezando o Android – 2013

eee19.com

SlidingMenu<com.slidingmenu.lib.SlidingMenu xmlns:sliding="http://schemas.android.com/apk/res-auto" android:id="@+id/slidingmenulayout" android:layout_width="fill_parent" android:layout_height="fill_parent" sliding:viewAbove="@layout/YOUR_ABOVE_VIEW" sliding:viewBehind="@layout/YOUR_BEHIND_BEHIND" sliding:touchModeAbove="margin|fullscreen" sliding:behindOffset="@dimen/YOUR_OFFSET" sliding:behindWidth="@dimen/YOUR_WIDTH" sliding:behindScrollScale="@dimen/YOUR_SCALE" sliding:shadowDrawable="@drawable/YOUR_SHADOW" sliding:shadowWidth="@dimen/YOUR_SHADOW_WIDTH" sliding:fadeEnabled="true|false" sliding:fadeDegree="float" sliding:selectorEnabled="true|false" sliding:selectorDrawable="@drawable/YOUR_SELECTOR"/>

Page 42: [FLISOL] Embelezando o Android – 2013

eee19.com

Referências

Page 43: [FLISOL] Embelezando o Android – 2013

eee19.com

www.androidviews.net

Page 44: [FLISOL] Embelezando o Android – 2013

eee19.com

appdevwiki.com

Page 45: [FLISOL] Embelezando o Android – 2013

eee19.com

Mais um pouco• Google Fonts!

• Font Squirrel!

• Fontello!

• IcoMoon

Page 46: [FLISOL] Embelezando o Android – 2013

eee19.com

Obrigado

• Twitter/ADN @douglasdrumond!

• www.eee19.com!

• gplus.to/douglasdrumond