More Related Content
PDF
[コデアル][Programming24]Androidアプリ勉強会01 PDF
Programming24 第2回androidアプリ勉強会 PDF
Programming24 第3回Androidアプリ勉強会 PPTX
Mapping wild species in Jabal Samhan Nature Reserve, Oman. PDF
PPS
PPS
PDF
Viewers also liked
PPT
Presentacion montajes definitiva1 PDF
PPTX
PPTX
Designing fresh experiences PPT
Manual de uso e.m. fre power point video converter PPTX
Rennie Sven Flores Humareda. tarea4 L/M PDF
sisqual team dimensioning_PT_web PDF
PPTX
PPTX
PDF
DocCity online platform UX design case study ODP
ODP
PPTX
20131004 - Css - Basic & Styling by 懿鋆 PPT
Творчий проект з трудового навчання Корабель «ПОБЕДА» PPTX
Parque Natural do Montesinho PPTX
Violencia, medios y publicidad PDF
PDF
PPSX
Aspectos da costa - Lúcia Jorge - 2010 Similar to [ABC2012S]Android2x/3x/4x対応アプリ開発Tips
PDF
AndroidのUI設計で押さえておきたいポイント PPTX
PDF
PPT
アプリ開発・端末毎の解像度の違いを吸収する方法 Android Bazaar and Conference 2011 Summer PDF
PDF
PPTX
PDF
PDF
2015年のAndroidアプリ開発入門 - ABCD 2015 Kanazawa PDF
(デ部発表用抜粋版)プログラマとデザイナが共有すべきUIに関するAndroidの10の機能 PDF
PDF
PDF
Androidアプリの魅力的なインターフェース〜本当にiOSアプリのデザインを流用するだけでいいの?〜 PPTX
Droidcon London2012 Speaker Experience PDF
PDF
PPTX
PDF
Android Lecture #04 @PRO&BSC Inc. PDF
PDF
More from Kenichi Kambara
PDF
Hello Flutterの次におさえたい Flutterのポイント その6 (レイアウト編) PDF
Hello Flutter”の次におさえたい Flutterのポイント その5 PDF
[ABC2018Spring]Flutterアプリ開発入門 PDF
“Hello Flutter”の次におさえたい Flutterのポイント その4 PDF
[Google I/O 2018 Highlights] Sandbox PDF
[Google I/O 2018 Highlights] Flutter / WearOS PDF
"Hello Flutter"の次におさえたいFlutterのポイントその3 PDF
Hello Flutterの次におさえたいFlutterのポイントその2 PDF
PDF
Hello Flutterの次におさえたいFlutterのポイント PDF
Developing Android Apps for Google Assistant PDF
Google Assistant対応アプリ開発3つのポイント PDF
10分で作るGoogle Assistant対応アプリ PDF
[Kotlin勉強会] Hello Kotlinの次におさえたいKotlinの勘所 PDF
Android O (Picture In Picture)入門+実装例 PDF
AndroidアプリのKotlin移行時に遭遇した問題と対処例 PDF
PDF
Publishing Android Wear 2.0 Apps PDF
Android Studio 2.3 New Features PDF
Android 7.0 Nougat マルチウィンドウ解説+α Recently uploaded
PDF
PCCC25(設立25年記念PCクラスタシンポジウム):Pacific Teck Japan テーマ2「『Slinky』 SlurmとクラウドのKuber... PDF
PCCC25(設立25年記念PCクラスタシンポジウム):Pacific Teck Japan テーマ3「『TrinityX』 AI時代のクラスターマネジメ... PDF
PCCC25(設立25年記念PCクラスタシンポジウム):富士通株式会社 テーマ1「HPC&AI: Accelerating material develo... PDF
論文紹介:HiLoRA: Adaptive Hierarchical LoRA Routing for Training-Free Domain Gene... PDF
AI開発の最前線を変えるニューラルネットワークプロセッサと、未来社会における応用可能性 PDF
PCCC25(設立25年記念PCクラスタシンポジウム):日本ヒューレット・パッカード合同会社 テーマ3「IT運用とデータサイエンティストを強力に支援するH... PPTX
2025年11月24日情報ネットワーク法学会大井哲也発表「API利用のシステム情報」 PDF
PCCC25(設立25年記念PCクラスタシンポジウム):日本ヒューレット・パッカード合同会社 テーマ1「大規模AIの能力を最大限に活用するHPE Comp... PDF
膨大なデータ時代を制する鍵、セグメンテーションAIが切り拓く解析精度と効率の革新 PDF
論文紹介:MotionMatcher: Cinematic Motion Customizationof Text-to-Video Diffusion ... PDF
ニューラルプロセッサによるAI処理の高速化と、未知の可能性を切り拓く未来の人工知能 PDF
PCCC25(設立25年記念PCクラスタシンポジウム):コアマイクロシステムズ株式会社 テーマ 「AI HPC時代のトータルソリューションプロバイダ」 PPTX
ChatGPTのコネクタ開発から学ぶ、外部サービスをつなぐMCPサーバーの仕組み PDF
PCCC25(設立25年記念PCクラスタシンポジウム):エヌビディア合同会社 テーマ1「NVIDIA 最新発表製品等のご案内」 PDF
論文紹介:DiffusionRet: Generative Text-Video Retrieval with Diffusion Model [ABC2012S]Android2x/3x/4x対応アプリ開発Tips
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
背景
アプリ開発のターゲットは?
➡フル対応する場合、現時点では基本的に2.x/3.x/4.x
フォン+
ハンドセット
主にハンドセット タブレット
+タブレット
2.x
タブレット
4.x
3.x 12
- 13.
- 14.
- 15.
Fragmentとは?
マルチPaneの画面構成時などに
役立つもの
ハンドセットの1例 タブレットの1例
15
- 16.
Fragmentとは?
マルチPaneの画面構成時などに
役立つもの
Fragment A Fragment B
ハンドセットの1例 タブレットの1例
16
- 17.
- 18.
- 19.
- 20.
UI-実現方式②
sw<N>dp,w<N>dp,h<N>dpの利用
概要 補足
(a)layout-sw600dp 縦横ともに600dp以上 画面方向に非依存
(b)layout-w720dp 横が720dp以上 画面方向に依存
(c)layout-h480dp 縦が480dp以上 画面方向に依存
(a)false (a)false (a)true
400dp (b)true 960dp (b)false 720dp (b)true
(c)false (c)true (c)true
960dp 1280dp
400dp 20
- 21.
UI-実現方式②
sw<N>dp,w<N>dp,h<N>dpの利用
概要 補足
(a)layout-sw600dp 縦横ともに600dp以上 画面方向に非依存
(b)layout-w720dp 実行する画面特性に応じて、適用される
横が720dp以上 画面方向に依存
(c)layout-h480dp
レイアウトを変更することが可能。
縦が480dp以上 画面方向に依存
(a)false (a)false (a)true
400dp (b)true 960dp (b)false 720dp (b)true
(c)false (c)true (c)true
960dp 1280dp
400dp 21
- 22.
- 23.
UI-実現方式②
sw<N>dp,w<N>dp,h<N>dpの利用
概要 補足
(a)layout-sw600dp 縦横ともに600dp以上 画面方向に非依存
(b)layout-w720dp 横が720dp以上 画面方向に依存
(c)layout-h480dp 縦が480dp以上 画面方向に依存
○Developerサイトで推奨されている。
×
3.2以降でしか利用できない。
※画面方向によって、dpが変わるケースがあるので
注意(GN:縦長360x592(dp)、横長598x360(dp))
23
- 24.
UI-実現方式③
①・②の併用方式
•layout/main.xml←以下2ヶ以外の場合
•layout-sw600dp/main.xml←3.2以降タブレット
•layout-xlarge/main.xml←主に3.0/3.1タブレット
○1.6以降であれば利用可能。
○
前述方式より精度を向上可能。v11等併用もあり。
△
同じレイアウトの場合も、同じファイルを複数配置。
△
Javaソース側のロジックも複雑に。
24
- 25.
UI-実現方式④
方式③ベースでLayout Aliases活用
<resources>
<item name="main_layout" type="layout">
@layout/main_onepane</item>
<bool name="has_two_panes">false</bool>
</resources>
○ 1pane、2paneなどレイアウトを
必要なパターン数のみ準備
25
- 26.
UI-実現方式④
方式③ベースでLayout Aliases活用
■values-xxxフォルダに格納するファイル
<resources>
<item name="main_layout" type="layout">
@layout/main_onepane</item>
<bool name="has_two_panes">false</bool>
</resources>
■Java側でのマルチPane判定 ○ 判定ロジックはシンプル
○
Resources res = getResources();
boolean hasTwoPanes =
res.getBoolean(R.bool.has_two_panes);
26
- 27.
API(Fragment)
SupportPackageにより2.xでも利用可能
2.x 3.x 4.x
Support
Packageなし ○ ○
Support
Packageあり
○ ○ ○
•Fragmentベースの実装をしておくことで、再利用性の向上。
•Support Packageの利用有無により実装が変わるので注意。
•変更例1)android.app.Fragment->android.support.v4.Fragment
•変更例2)Activity->FragmentActivity
•など幾つかの変更が必要。
27
- 28.
- 29.
- 30.
- 31.
API(OptionMenu/ActionBar)
AndroidManifestの内容で振る舞い変化
2.x 3.x 4.x
minSdk=なし&targetSdk=なし ○
minSdk=8&targetSdk=8 ○ △ △
minSdk=8&targetSdk=11 ○ ○ △/○
• JavaソースやXMLが一緒でもManifestで挙動変化
(上記はあくまで設定の1例(正解はCaseByCase))。
➡オフィシャルBlogに、関連記事あり。
•ICSではSplit ActionBar(画面下部にActionBar表示)も
利用可能。採用可否を合わせて検討。
31
- 32.
API(OptionMenu/ActionBar)
OptionMenuとActionBarの共存
2.x 3.x 4.x
OptionMenu ○ ○ ○
ActionBar ○ ○
•2.xでActionBar使えない(Support Packageでも)
➡ActionBarはあきらめてOptionMenuにする
or 自前で実装する等(ActionBarCompatが参考に)
•操作性の観点だと、個人的にはActionBarがおすすめ。
•AndroidManifest以外に、Styleによる影響もあり!
32
- 33.
- 34.
- 35.
参考文献
Android公式Developer向けサイト
•Supporting Tablets and Handsets
http://developer.android.com/guide/practices/tablets-and-handsets.html
•Supporting Multiple Screens
http://developer.android.com/guide/practices/screens_support.html
•Supporting Different Screen Sizes
http://developer.android.com/training/multiscreen/screensizes.html
35
- 36.