Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
WearableRecyclerView
funnelbit
October 26, 2016
Technology
1
660
WearableRecyclerView
funnelbit
October 26, 2016
Tweet
Share
More Decks by funnelbit
See All by funnelbit
Hatena Engineer Seminar #9
funnelbit
5
6.7k
droidkaigi-2017-renovation
funnelbit
10
9.9k
Dart
funnelbit
0
150
BottomBarAndSnackBar
funnelbit
0
250
Dagger2 Optional bindings
funnelbit
0
460
QucikSettingsTileAPI
funnelbit
0
300
Mobile Vision
funnelbit
0
310
AwarenessAPI
funnelbit
0
120
Asynchronous Injection
funnelbit
1
200
Other Decks in Technology
See All in Technology
Babylon.jsで3DViewerを作ってみた!!!
iwaken71
1
920
OSS ことはじめ
hsbt
3
480
Unity Package Managerで自作パッケージを配布する方法
yunoda
0
150
スタートアップ入社4日目までに考えたAWSのセキュリティ向上/ Startup AWS Security
shonansurvivors
3
2.9k
目と耳を持った自然言語処理 - スタートアップにおける価値創出のために
yag_ays
PRO
0
530
220510 プロセスマイニングを学ぶ PLAY与田さん
comucal
PRO
0
740
Microsoft 365の中でのPower BIの利用 / M365VM2022
ishiayaya
0
1.5k
SRE_チーム立ち上げから1年_気づいたら_SRE_っぽくない仕事まで貢献しちゃってる説
bitkey
PRO
0
2k
Puny to Powerful PostgreSQL Rails Apps
andyatkinson
PRO
0
260
Power BIのモバイルと都 +1 / Tokyo
ishiayaya
0
140
完全に理解した incremetal 〜そして、何もわからないへ〜
mashiike
0
210
THETA Xの登場はジオ業界を変えるか?
furuhashilab
0
160
Featured
See All Featured
Statistics for Hackers
jakevdp
781
210k
Stop Working from a Prison Cell
hatefulcrawdad
261
17k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
236
1M
Become a Pro
speakerdeck
PRO
3
780
How STYLIGHT went responsive
nonsquared
85
3.9k
How to name files
jennybc
39
58k
What the flash - Photography Introduction
edds
61
9.9k
Agile that works and the tools we love
rasmusluckow
319
19k
Web Components: a chance to create the future
zenorocha
303
40k
Practical Orchestrator
shlominoach
178
8.6k
How GitHub (no longer) Works
holman
296
140k
Adopting Sorbet at Scale
ufuk
63
7.5k
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
͋Γ͕ͱ͏͍͟͝·ͨ͠