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
ogapants
March 18, 2019
Technology
0
700
5分でわかるWebView+ViewGroupを実現するAOSPメールアプリの内部実装と ニュースアプリへの応用 / Otemachi.apk02
Otemachi.apk #02
https://nikkei.connpass.com/event/120816/
ogapants
March 18, 2019
Tweet
Share
More Decks by ogapants
See All by ogapants
WebView+ViewGroupを実現するAOSPメールアプリの内部実装とニュースアプリへの応用 / DroidKaigi2019
ogapants
3
3.5k
ScrollViewで 読了計測した話
ogapants
0
810
「AndroidはiOSと同じデザインで!」と言われたときのTips
ogapants
18
8.4k
たのしいAndroidかいはつ
ogapants
0
150
Fabric Digitsで始めるSMS認証
ogapants
1
1.2k
MediaController をカスタマイズするぞ
ogapants
0
2.7k
Other Decks in Technology
See All in Technology
SSH公開鍵認証による接続 / Connecting with SSH Public Key Authentication
kaityo256
PRO
2
220
どっちの API SHOW?SharePoint 開発における SharePoint REST API Microsoft Graph API の違い / Which API show? Differences between Microsoft Graph API and SharePoint REST API
karamem0
0
110
ルートユーザーの活用と管理を徹底的に深掘る
yuobayashi
6
730
大規模アジャイル開発のリアル!コミュニケーション×進捗管理×高品質
findy_eventslides
0
580
LINEギフトのLINEミニアプリアクセシビリティ改善事例
lycorptech_jp
PRO
0
280
モンテカルロ木探索のパフォーマンスを予測する Kaggleコンペ解説 〜生成AIによる未知のゲーム生成〜
rist
4
1.1k
Amazon Q Developer 他⽣成AIと⽐較してみた
takano0131
1
120
新卒エンジニア研修の試行錯誤と工夫/nikkei-tech-talk-31
nishiuma
0
200
ペアプログラミングにQAが加わった!職能を超えたモブプログラミングの事例と学び
tonionagauzzi
1
150
ウェブアクセシビリティとは
lycorptech_jp
PRO
0
310
日本MySQLユーザ会ができるまで / making MyNA
tmtms
1
370
RAGの基礎から実践運用まで:AWS BedrockとLangfuseで実現する構築・監視・評価
sonoda_mj
0
440
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
30
1.1k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
22
2.6k
Agile that works and the tools we love
rasmusluckow
328
21k
Java REST API Framework Comparison - PWX 2021
mraible
29
8.5k
How STYLIGHT went responsive
nonsquared
99
5.4k
How to Ace a Technical Interview
jacobian
276
23k
Writing Fast Ruby
sferik
628
61k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
46
2.4k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Producing Creativity
orderedlist
PRO
344
40k
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