Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
5分でわかるWebView+ViewGroupを実現するAOSPメールアプリの内部実装と ニ...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
ogapants
March 18, 2019
Technology
770
0
Share
5分でわかるWebView+ViewGroupを実現するAOSPメールアプリの内部実装と ニュースアプリへの応用 / Otemachi.apk02
Otemachi.apk #02
https://nikkei.connpass.com/event/120816/
ogapants
March 18, 2019
More Decks by ogapants
See All by ogapants
WebView+ViewGroupを実現するAOSPメールアプリの内部実装とニュースアプリへの応用 / DroidKaigi2019
ogapants
3
3.9k
ScrollViewで 読了計測した話
ogapants
0
870
「AndroidはiOSと同じデザインで!」と言われたときのTips
ogapants
17
8.5k
たのしいAndroidかいはつ
ogapants
0
180
Fabric Digitsで始めるSMS認証
ogapants
1
1.3k
MediaController をカスタマイズするぞ
ogapants
0
2.8k
Other Decks in Technology
See All in Technology
プラットフォームエンジニア ワークショップ/ platform-workshop
databricksjapan
0
220
インフラが苦手でも大丈夫! 紙芝居 Kubernetes -WWGT 10周年編-
aoi1
1
340
AI駆動開発が変える、大規模開発の前提 ーHuman in the Loop から Human on the Loop へ / AIE2026
visional_engineering_and_design
2
2.2k
もりもり新機能を一挙紹介! AgentCoreに入門して、AWS上にAIエージェントを構築しよう
minorun365
PRO
6
720
ポスター発表&デモと総括 / Poster Presentations & Demonstrations and Summary
ks91
PRO
0
190
新規ゲーム開発におけるAI駆動開発のリアル
202409e2
0
2.1k
AI フレンドリーなエラー監視を TypeScript で実現する
shinyaigeek
2
250
Gradle×GitHub_ActionsでCI時間を約50%短縮 ジョブ分割の設計と落とし穴 / Cutting CI Time by ~50% with Gradle and GitHub Actions: Job-Splitting Design and Pitfalls
takatty
0
620
美味しいスイスチーズを作ろう🧀🐭
taigamikami
1
230
Diagnosing performance problems without the guesswork
elenatanasoiu
0
160
AI Adaptable なテストを整える工夫 / Ways to Make Your Tests AI-Adaptable
bitkey
PRO
2
210
BigQuery の Cross-cloud Lakehouse への歩み
phaya72
2
540
Featured
See All Featured
How to train your dragon (web standard)
notwaldorf
97
6.7k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
230
A designer walks into a library…
pauljervisheath
211
24k
Git: the NoSQL Database
bkeepers
PRO
432
67k
Paper Plane
katiecoart
PRO
1
51k
Deep Space Network (abreviated)
tonyrice
0
160
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.5k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.8k
Mind Mapping
helmedeiros
PRO
1
230
Information Architects: The Missing Link in Design Systems
soysaucechin
0
960
For a Future-Friendly Web
brad_frost
183
10k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
320
Transcript
(5ͰΘ͔Δ) WebView+ViewGroupΛ࣮ݱ͢Δ AOSPϝʔϧΞϓϦͷ෦࣮ͱ χϡʔεΞϓϦͷԠ༻ 2019/03/18 Otemachi.apk #02 @ogapants
ࣗݾհ • ͓͕ͺΜ@ogapants • ຊܦࡁ৽ฉࣾ • DroidKaigi2019Ͱ30ͨ͠༰ͷॖ൛Ͱ͢
͍͖ͳΓͰ͕͢ • ͜͏͍͏ߏͷը໘ɺͲ͏ͬͯ εΫϩʔϧͤ͞·͔͢ʁ ViewGroup WebView ViewGroup
͍͖ͳΓͰ͕͢ • ScrollViewͰ ғͬͪΌ͍·ͤΜ͔ʁ WebView ScrollView? ViewGroup ViewGroup
͍͖ͳΓͰ͕͢ • ScrollViewWebViewΛೖΕΔ͜ͱΛఆͯ͠ ࡞͍ͬͯͳ͍ʂ by GoogleΤϯδχΞ
͜ͷൃදͰ͢͜ͱ • AOSPϝʔϧͰWebViewͲ͏ΘΕ͍ͯΔͷ͔ • Ͳ͏ܦΞϓϦʹԠ༻ͨ͠ͷ͔ • WebView+ViewGroupΛ࣮ݱ͢ΔͨΊͷࢦඪ
WebView+ViewGroupΛ ࣮ݱ͢ΔAOSPϝʔϧΞϓϦͷ ෦࣮
AOSPϝʔϧΞϓϦͰͷߏ ϔομʔViewGroup ίϯςϯπWebView ϑολʔViewGroup
AOSPϝʔϧΞϓϦͰͷߏ WebView in ScrollView AOSPϝʔϧΞϓϦ WebView ViewGroup ScrollView ViewGroup WebView
ViewGroup ViewGroup
AOSPϝʔϧΞϓϦͰͷߏ • WebViewͰεΫϩʔϧͤ͞Δ • ViewGroup࿈ಈ • ViewGroupͷߴ͞cssͰpadding WebView ViewGroup ViewGroup
padding padding
AOSPϝʔϧΞϓϦ͍͢͝
χϡʔεΞϓϦͷԠ༻
ϓϩμΫτೖ·ͰͷྲྀΕ • WebView in ScrollViewΛࣙΊΔඪ • AOSPʹࢀߟʹͳΔ࣮͕ͳ͍͔୳͢ • ෦࣮ΛಡΈਐΊΔ •
࠷ݶͰಈ͘ΞϓϦΛ࡞ͬͯݕূ • ϓϩμΫτʹೖ
ϓϩμΫτೖ • ϑολʔͷΈඞཁͳը໘͔Β࣮ࢪ WebView ϑολʔViewGroup
࣮ࡍͲ͏ͩͬͨͷ͔
࠾༻ͯ͠Α͔ͬͨ͜ͱ • ScrollView͔Β٫Ͱ͖ͨ • ඳը͕एׯૣ͘ͳͬͨ
࠾༻ͯ͠େมͩͬͨ͜ͱ • Մಡੑ͕Լ͕Γɺϝϯςίετ͕૿͑ͨ • ಋೖ͢Δ·Ͱ͕͔͔࣌ؒͬͨ
ਖ਼ؾܰʹਅࣅͮ͠Β͍…
͠WebView+ViewGroup͠ ͨ͘ͳͬͨΒʁ
͠ඞཁʹഭΒΕͨΒ… • WebViewΛΊΔʢ࠷ਪʣ • WebViewͷΈʹ͢Δʢڧ͘ਪʣ • AOSPϝʔϧํࣜΛࢀߟʹ͢Δʢਪʣ
͠ඞཁʹഭΒΕͨΒ… • https://github.com/angebagui/medium-textview/ https://github.com/m7mdra/HtmlRecycler ͷϥΠϒϥϦΛͬͯΈΔʢرʣ • ৽͍͠ΓํΛߟ͑Δʢେ݀ʣ • ScrollViewʹWebViewΛೖΕΔʢඇਪʣ
͍͞͝ʹ
·ͱΊ • AOSPݟͷմͳͷͰ͏·͘ར༻͠Α͏ • ࠷ݶͷ࣮Ͱ༷ࢠΛݟ࣮ͯફ͠Α͏ • ScrollViewͷதʹWebViewΛೖΕΔͷආ͚Α͏
ڵຯ࣋ͬͨํશ൛Λʂ https://bit.ly/2HmOv2V
࠾༻ͬͯ·͢ʂ https://s.nikkei.com/s_android