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
WearableRecyclerView
Search
funnelbit
October 26, 2016
Technology
840
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
WearableRecyclerView
funnelbit
October 26, 2016
More Decks by funnelbit
See All by funnelbit
Hatena Engineer Seminar #9
funnelbit
5
7.5k
droidkaigi-2017-renovation
funnelbit
10
11k
Dart
funnelbit
0
300
BottomBarAndSnackBar
funnelbit
0
540
Dagger2 Optional bindings
funnelbit
0
610
QucikSettingsTileAPI
funnelbit
0
380
Mobile Vision
funnelbit
0
490
AwarenessAPI
funnelbit
0
160
Asynchronous Injection
funnelbit
1
290
Other Decks in Technology
See All in Technology
データレイクの「見えない問題」を可視化する
sansantech
PRO
1
200
Multi-Agent並列開発を 安全に回すための技術 / Technology for Safely Multi-Agent Parallel Development
tooppoo
0
190
AI Agentをシステムに組み込む前にゆるく向き合ってみる
hayama17
0
150
フルAIで個人開発して学んだあれこれ / yuruai vol.1
isaoshimizu
0
130
從開發到部署全都交給 AI:實作 AI 驅動的自動化流程
appleboy
0
170
週末にループ・エンジニアリングの理解を深めるためのスライド
nagatsu
0
320
MySQL & MySQL HeatWave Report - June 2026
freshdaz
0
140
[チョークトーク資料]AWS DevOps Agent を使いこなす / AWS Dev Ops Agent Chalk Talk AWS Summit Japan 2026
kinunori
4
770
AI時代のコスト管理を考えよう〜明日から使える実践AWSノウハウ~
yoshimi0227
0
870
徹底討論!ECS vs EKS!
daitak
3
1.7k
From Prompt Engineering to Loop Engineering
shibuiwilliam
1
230
気軽に使える"情報のハブ"としてのNotion活用 〜フロー情報の集積点 と、 Claude Code × Notion AI〜
syucream
1
200
Featured
See All Featured
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
950
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.4k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
140
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
430
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
3.5k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
170
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.7k
Raft: Consensus for Rubyists
vanstee
141
7.6k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
240
Music & Morning Musume
bryan
47
7.2k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
52k
A better future with KSS
kneath
240
18k
Transcript
8FBSBCMF 3FDZDMFS7JFX
ࣗݾհ ଜྋ גࣜձࣾͯͳ )BUFOBGVOOFMCJU 5XJUUFS!FYQFSPQFSP
ހʹͦͬͯஔ͢Δ 3FDZDMFS7JFX
None
8FBSBCMF 3FDZDMFS7JFX w ؙܕ8FBSBCMFσόΠεʹରԠͨ͠ 3FDZDMFS7JFX w 3FDZDMFS7JFXͷࢠΫϥε w ހʹͦͬͯεΫϩʔϧ͍ͯ͘͠ w
8FBSd
None
<android.support.wearable.view.WearableRecyclerView xmlns:android="http://schemas.android.com/apk/res/ android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/recycler_launcher_view" android:layout_width="match_parent" android:layout_height="match_parent" android:scrollbars="vertical"/> 8FBSBCMF
3FDZDMFS7JFX
8FBSBCMF 3FDZDMFS7JFX mWearableRecyclerView.setAdapter(adapter);
None
0⒎TFUUJOH)FMQFS
0⒎TFUUJOH)FMQFS w JUFNͷP⒎TFUΛࢦఆͰ͖Δ public class CustomOffsettingHelper extends DefaultOffsettingHelper { @Override
public void updateChild(View child, WearableRecyclerView parent) { super.updateChild(child, parent); // Figure out % progress from top to bottom float centerOffset = ((float) child.getHeight() / 2.0f) / (float) parent.getHeight(); float yRelativeToCenterOffset = (child.getY() / parent.getHeight()) + centerOffset; // Normalize for center mProgressToCenter = Math.abs(0.5f - yRelativeToCenterOffset); // Adjust to the maximum scale mProgressToCenter = Math.min(mProgressToCenter, MAX_ICON_PROGRESS); child.setScaleX(1 - mProgressToCenter); child.setScaleY(1 - mProgressToCenter); }
$JSDVMBS4DSPMMJOH (FTUVSF
$JSDVMBS4DSPMMJOH(FTUVSF mWearableRecyclerView.setCircularScrollingGestu reEnabled(true); w ؙ͍εΫϩʔϦϯάΛ༗ޮʹ͢Δ
$JSDVMBS4DSPMMJOH(FTUVSF
$JSDVMBS4DSPMMJOH(FTUVSF mWearableRecyclerView.setScrollDegreesPerScreen (90); w εΫϩʔϧͷ߹͍ΛมߋͰ͖Δ
"ODIPS
w σϑΥϧτͰJUFNͷY ZJUFNͷߴ͞ ͷத৺
BEKVTU"ODIPS0⒎TFU9: public class CustomOffsettingHelper extends DefaultOffsettingHelper { … @Override
protected void adjustAnchorOffsetXY(View child, float[] anchorOffsetXY) { anchorOffsetXY[0] = child.getHeight() / 2.0f; } … }
·ͱΊ w ؙܕσόΠεͷڧΈΛ׆͔ͤΔ w ໊લͷҙਤ͕ΠϚΠνΑ͘Θ͔Βͳ͍ ʢ8FBSBCMF3FDZDMFS7JFXʣ
ৄࡉ w IUUQTEFWFMPQFSBOESPJEDPNXFBS QSFWJFXGFBUVSFTXFBSBCMFSFDZDMFS WJFXIUNM
͋Γ͕ͱ͏͍͟͝·ͨ͠