【第4回】デザイナーがコードから読み解く、androidアプリのデザインの幅を広げるコツとtips...

Post on 28-May-2015

22.600 Views

Category:

Design

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

レイアウト編 - よく使うレイアウト -

TRANSCRIPT

ハッシュタグ

##aaaaddeessiiggnnssデザイナーが

コードから読み解く、

AAnnddrrooiiddアプリの

デザインの幅を広げるコツと

TTiippss

第44回:レイアウト編@@GGMMOO YYoouurrss

22001122..1100..2255

ハッシュタグ

##aaaaddeessiiggnnss

0

10

20

30

40

50

60

70

Web アプリ

デザイン 開発

aassaammiieeeeee77 ttoommmmmmmmyy aaddaammrroocckkeerr

ハッシュタグ

##aaaaddeessiiggnnss

がんばって作ったデザインが、

実装後に残念な結果にならないために

ハッシュタグ

##aaaaddeessiiggnnss

秋葉ちひろ

•・ @@ttoommmmmmmmyy•・ デザイナー/アートディレクター•・ WWeebb系・アプリ系•・ BBaaiidduuでSSiimmeejjiiの開発のフロントエンドの一部

レイアウト編

今日のアジェンダ

11.. よく使うレイアウト

22.. 単位と余白

33.. PPSSやFFWWでデザイン案を作るときの33箇条

デザイナー向�け

レイアウト入�門

11.. よく使うレイアウト

レイアウト編

wwrraapp__ccoonntteenntt

ffiillll__ppaarreenntt//mmaattcchh__ppaarreenntt

4488ddpp

インライン要素っぽい

ブロック要素っぽい

android:layout_width="fill_parent"

android:layout_height="wrap_content"

TTeexxttVViieeww

IImmaaggeeVViieeww

TTeexxttVViieeww

<TextView /> <TextView /> <TextView /> <TextView />

<ImageView /><ImageView />

<TextView />

LLiinneeaarrLLaayyoouutt

11.. よく使うレイアウト

TTeexxttVViieeww

IImmaaggeeVViieeww

TTeexxttVViieeww

<TextView /> <TextView /> <TextView /> <TextView />

<ImageView /><ImageView />

<TextView />

TTeexxttVViieeww

IImmaaggeeVViieeww

TTeexxttVViieeww

<TextView /> <TextView /> <TextView /> <TextView />

<ImageView /><ImageView />

<TextView />

<LinearLayout>

</LinearLayout>

<TextView /> <TextView /> <TextView /> <TextView />

<ImageView /><ImageView />

<TextView />

<LinearLayout>

</LinearLayout>

IImmaaggeeVViieeww

TTeexxttVViieeww

TTeexxttVViieeww

TTeexxttVViieeww

TTeexxttVViieeww

IImmaaggeeVViieeww

TTeexxttVViieeww

たてにならべー!

<TextView /> <TextView /> <TextView /> <TextView />

<ImageView /><ImageView />

<TextView />

<LinearLayout>

</LinearLayout>

IImmaaggeeVViieeww

TTeexxttVViieeww

TTeexxttVViieeww

TTeexxttVViieeww

TTeexxttVViieeww

IImmaaggeeVViieeww

TTeexxttVViieeww

よこにならべー!

<TextView /> <TextView /> <TextView /> <TextView />

<ImageView /><ImageView />

<TextView />

<LinearLayout>

</LinearLayout>

IImmaaggeeVViieewwTTeexxttVViieeww TTeexxttVViieeww TTeexxttVViieeww TTeexxttVViieeww IImmaaggeeVViieeww

よこにならべー!

(入�り切らない)

imgname id time

text

imgname id time

text

よこにならべー!

imgname id time

text

よこにならべー! たてにならべー!

imgname id time

text

よこにならべー! たてにならべー!

よこにならべー!

<LinearLayout>

</LinearLayout>

<ImageView />

<LinearLayout>

</LinearLayout>

<LinearLayout></LinearLayout>

<ImageView />

<LinearLayout>

</LinearLayout>

<LinearLayout>

</LinearLayout>

<ImageView />

<LinearLayout>

</LinearLayout>

<LinearLayout>

</LinearLayout>

<TextView />

<LinearLayout>

</LinearLayout>

<ImageView />

<LinearLayout>

</LinearLayout>

<LinearLayout>

</LinearLayout>

<TextView />

<LinearLayout>

<TextView /><TextView /><TextView />

</LinearLayout>

LLiinneeaarrLLaayyoouuttの難点!

構造が複雑で、階層が深い

数が多いと、重い原因となる

name id time

よこにならべー!

name id time

よこにならべー!

android:layout_weight="1" android:layout_width="0dp" android:layout_height="wrap_content"

actionbarたてにならべー!

android:layout_weight="1" android:layout_width="fill_parent" android:layout_height="0dp"

toolbar

OKcancel

よこにならべー!

android:layout_weight="1" android:layout_width="0dp" android:layout_height="wrap_content"

11 11

OKcancel

よこにならべー!

layout_weight11 22

LLiinneeaarrLLaayyoouuttの得意なこと

•・ 等分割や、割合を指定した分割が得意•・ 使わないスペースを最大限に伸ばすことが得意

RReellaattiivveeLLaayyoouutt

11.. よく使うレイアウト

imgname id time

text

imgname id time

text

ぼく親だよー

imgname id time

text

ぼく親だよー ぼく親の右どなりAAのだよー

imgname id time

text

ぼく親だよー ぼく親の右どなりAAのだよー

ぼくAAの右どなりのBBだよー

imgname id time

text

ぼく親だよー

ぼくAAの下でAAと左端が同じなCCだよー

ぼく親の右どなりAAのだよー

ぼくAAの右どなりのBBだよー

imgname id time

text

ぼく親だよー

ぼくCCの上でCCと右端が同じなDDだよー

ぼく親の右どなりAAのだよー

ぼくAAの右どなりのBBだよー

ぼくAAの下でAAと左端が同じなCCだよー

ぼくCCの上でCCと右端が同じなDDだよー

ぼく親だよー

ぼく親の右どなりAAのだよー

ぼくAAの下でAAと左端が同じなCCだよー

ぼくAAの右どなりのBBだよー

android:id="@+id/Oya"

android:layout_toRightOf="@id/Oya"

android:layout_toRightOf="@id/A"

android:layout_below="@id/A"android:layout_alignLeft="@id/A"

android:layout_above="@id/C"android:layout_alignRight="@id/C"

imgname id time

text

RReellaattiivveeLLaayyoouutt

imgname id

RReellaattiivveeLLaayyoouutt

<ImageView />

<TextView /> <TextView /> <TextView /> <TextView />

<RelativeLayout>

</RelativeLayout>

<ImageView />

<LinearLayout>

</LinearLayout>

<LinearLayout>

</LinearLayout>

<TextView />

<LinearLayout>

<TextView /><TextView /><TextView />

</LinearLayout>

RReellaattiivveeLLaayyoouuttの得意なこと

•・ LLiinneeaarrLLaayyoouuttだと階層が深くなってしまうところを、軽々と11階層で表現できる!

FFrraammeeLLaayyoouutt

11.. よく使うレイアウト

重ねるときに使おう

IImmaaggeeVViieeww

TTeexxttVViieeww

android:layout_width="fill_parent"

android:layout_height="fill_parent"

sshhaappee

ssttaarrttCCoolloorr ##88000000

eennddCCoolloorr ##00000000

<ScrollView android:layout_width="fill_parent" android:layout_height="fill_parent" ></ScrollView>

<ScrollView android:layout_width="fill_parent" android:layout_height="fill_parent" >

</ScrollView>

要素はひとつだけ

<HorizontalScrollView android:layout_width="fill_parent" android:layout_height="fill_parent" ></HorizontalScrollView>

22.. 単位と余白

レイアウト編

AAnnddrrooiiddアプリの

レイアウトで使う単位

ddpp ssppDDeennssiittyy--iinnddeeppeennddeenntt PPiixxeellss SSccaallee--iinnddeeppeennddeenntt PPiixxeellss

http://developer.android.com/guide/topics/resources/more-resources.html#Dimension

ddppについて

22.. 単位と余白

332200ppxx

448800ppxx

448800ppxx

880000ppxx

224400ddppii 11..55116600ddppii 11

332200ppxx

448800ppxx

448800ppxx

880000ppxx

224400ddppii 11..55116600ddppii 11

332200ddpp 332200ddpp

hhddppii

224400ddppii

xxhhddppii

332200ddppii

11..55 22

11..55ppxx

11ddpp

22ppxx

11ddpp

mmddppii

116600ddppii

11

11ppxx

11ddpp

hhddppii

224400ddppii

xxhhddppii

332200ddppii

11..55 22

11..55ppxx

11ddpp

22ppxx

11ddpp

ssppについて

22.. 単位と余白

hhddppii

224400ddppii

xxhhddppii

332200ddppii

11..55 22

11..55ppxx

11sspp

22ppxx

11sspp

mmddppii

116600ddppii

11

11ppxx

11sspp

hhddppii

224400ddppii

xxhhddppii

332200ddppii

11..55 22

11..55ppxx

11sspp

22ppxx

11sspp

ddpp//ssppを意識すること

ddpp ssppDDeennssiittyy--iinnddeeppeennddeenntt PPiixxeellss SSccaallee--iinnddeeppeennddeenntt PPiixxeellss

http://developer.android.com/guide/topics/resources/more-resources.html#Dimension

重要なのは…�

実際にどう作るか

考えてみる

22.. 単位と余白

http://developer.android.com/design/style/metrics-grids.html

332200ddpp

553333ddpp

336600ddpp

664400ddpp

11..55ppxx11ddpp

hhddppii

22ppxx11ddpp

xxhhddppii

xxhhddppii4488ddpp

4488ddpp

336600ddpp772200ppxx

9966ppxx

xxhhddppii

1122ddpp

1122ddpp

1122ddpp1166ddpp

88ddpp

3322ppxx

2244ppxx

1166ppxx

xxhhddppii

1122sspp

1188sspp

1144sspp

2244ppxx

3322ppxx

2288ppxx

<RelativeLayout android:layout_width="fill_parent" android:layout_height="wrap_content"

android:layout_marginLeft="16dp"

android:layout_marginRight="16dp"

android:paddingTop="12dp"

android:paddingBottom="12dp"> <ImageView android:layout_width="48dp" android:layout_height="48dp"

android:layout_marginRight="12dp" android:src="@drawable/photo" android:id="@+id/photoarea" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content"

android:textSize="18sp" android:textColor="#fff" android:layout_toRightOf="@id/photoarea" android:text="Adamrocker" android:id="@+id/titlearea" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content"

android:textSize="14sp" android:textColor="#bbbbbb" android:layout_below="@id/titlearea" android:layout_alignLeft="@id/titlearea" android:text="Simeji5.3だぽーん。録音とかできるの? マジ?てかAAパネェ!" /></RelativeLayout>

PPhhoottoosshhoopp GGaallaaxxyy NNeexxuuss で実装

GGaallaaxxyy NNeexxuuss で実装 HHTTCC DDeessiirree で実装

336600ddpp 332200ddpp

PPSSやFFWWでデザインを作る

ときの33箇条

レイアウト編:まとめ

サイズは(ほぼ)22種類!ddppやssppを意識する

伸縮できるところを意識する

1.

332200ddpp

553333ddpp

336600ddpp

664400ddpp

11..55ppxx11ddpp

hhddppii

22ppxx11ddpp

xxhhddppii

xxhhddppiiの余白は44の倍数の

ddppだとベスト!hhddppiiになっても整数になる

2.

hhddppii

224400ddppii

xxhhddppii

332200ddppii

11..55 22

11..55 22: = xxddppiiの余白:

xxhhddppiiの余白

11..55 22: = :xxhhddppiiの余白

= xxhhddppiiの余白 ×

22

11..55

44

33

xxddppiiの余白

xxddppiiの余白

44の倍数

作ったあとは、実機で確認

(要ものさし)何mmmmになるのかを実際にチェック

3.

デザイナーにも広めたい

と思ってはじめた勉強会

GGoooodd LLuucckk!!

ありがとうございました!

•・ @@ttoommmmmmmmyy•・ ffaacceebbooookk :: 秋葉ちひろ•・ 次回は1111//88(木)総集編@@GGooooggllee

hhttttpp::////ggoooo..ggll//iiLLBBppoo

top related