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
Encouragement of ListView
Search
Ryutaro Miyashita
July 14, 2013
Technology
3
3.2k
Encouragement of ListView
Introduction of Titanium 3.1 ListView
Ryutaro Miyashita
July 14, 2013
Tweet
Share
More Decks by Ryutaro Miyashita
See All by Ryutaro Miyashita
Java で書かれた Android アプリを Kotlin で書き直すまでの話 / Talk of rewrite Android app for Java to Kotlin
ryugoo
0
1.7k
開発 4 年目のアプリへの Kotlin 導入
ryugoo
0
420
チーム開発と Android アプリの構成
ryugoo
5
1.2k
開発 4 年目のアプリへの Kotlin 導入
ryugoo
1
2.7k
Either で想定内のエラーと想定外のエラーを別ものにしたい!
ryugoo
2
1.7k
全て S になる -RxJava と LWS を持ち込む楽しさ-
ryugoo
4
750
Transition at RxJava 1.x to 2.x
ryugoo
0
540
Kotlin さんと誕生日が近いだけの男の話
ryugoo
2
510
Android エンジニアになって 2 年の学び
ryugoo
1
2.7k
Other Decks in Technology
See All in Technology
PHPでWebブラウザのレンダリングエンジンを実装する
dip_tech
PRO
0
200
Uniadex__公開版_20250617-AIxIoTビジネス共創ラボ_ツナガルチカラ_.pdf
iotcomjpadmin
0
160
M3 Expressiveの思想に迫る
chnotchy
0
100
Postman AI エージェントビルダー最新情報
nagix
0
110
Node-RED × MCP 勉強会 vol.1
1ftseabass
PRO
0
140
Model Mondays S2E02: Model Context Protocol
nitya
0
220
本が全く読めなかった過去の自分へ
genshun9
0
170
“社内”だけで完結していた私が、AWS Community Builder になるまで
nagisa53
1
380
OpenHands🤲にContributeしてみた
kotauchisunsun
1
430
ひとり情シスなCTOがLLMと始めるオペレーション最適化 / CTO's LLM-Powered Ops
yamitzky
0
420
~宇宙最速~2025年AWS Summit レポート
satodesu
1
1.8k
2年でここまで成長!AWSで育てたAI Slack botの軌跡
iwamot
PRO
4
700
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
What's in a price? How to price your products and services
michaelherold
246
12k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.5k
GraphQLとの向き合い方2022年版
quramy
48
14k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Rebuilding a faster, lazier Slack
samanthasiow
82
9.1k
Building Adaptive Systems
keathley
43
2.6k
How to train your dragon (web standard)
notwaldorf
93
6.1k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
How to Think Like a Performance Engineer
csswizardry
24
1.7k
Transcript
5JUBOJVN͘͘ձJO/*'5: -JTU7JFXͷεεϝ 5BCMF7JFXͱҰମͳʹ͕ҟͳΔͷ͔
3ZVUBSP.JZBTIJUB $IBU8PSL.PCJMF"QQ&OHJOFFS 5JUBOJVN.PCJMFϢʔβʔձॻه SZVHPP@ SZVUBSPNJZBTIJUB SZVHPP
JNUIJOLFSOFU 5JUBOJVN͘͘ձJO/*'5:
5JUBOJVN͘͘ձJO/*'5: ࠓळɺϞόΠϧΞϓϦΛશ໘ϦχϡʔΞϧ 5JUBOJVN͘͘ձJO/*'5:
ύϑΥʔϚϯε 5JUBOJVN͘͘ձJO/*'5: 5JUBOJVNΞϓϦͰ·͞ΕΔ՝ͷͭ
5J6*5BCMF7JFX 5JUBOJVN͘͘ձJO/*'5: ΈΜͳେ͖͍ͬͺ͍͏
࣮ੑೳʷ 5JUBOJVN͘͘ձJO/*'5: ͔ͬͯΔͳ "OESPJEͳ
Ȓ 5JUBOJVN͘͘ձJO/*'5: ೦ɺզʑͷ5JUBOJVNऴΘͬͯ͠·ͬͨ
5JUBOJVN͘͘ձJO/*'5: ʘʘaaᵋ Т ʯʗʗ ͦΜͳ5JUBOJVNʹٹੈओ͕ ʘʘaaᵋ Т ʯʗʗ 5JUBOJVN͘͘ձJO/*'5: ͦΜͳ5JUBOJVNʹٹੈओ͕
5J6*-JTU7JFX 5JUBOJVN͘͘ձJO/*'5: 5JUBOJVNYʹݱΕͨ৽͍͠"1*
-JTU7JFXࢁͷSPXΛ࣋ͭ߹ੑೳ͕ྑ͍ 5JUBOJVN͘͘ձJO/*'5: “ListView is designed to perform better with a
large number of rows.”
Ξϓϩʔνͷҧ͍ 5JUBOJVN͘͘ձJO/*'5: -JTU7JFXͱ5BCMF7JFXͷҧ͍
σʔλͱϏϡʔ 5JUBOJVN͘͘ձJO/*'5: -JTU7JFXσʔλࢦ5BCMF7JFXϏϡʔࢦ
5JUBOJVN͘͘ձJO/*'5:
5JUBOJVN͘͘ձJO/*'5: σʔλ Ϗϡʔ ใͷҰཡ ԿΒ͔ͷը໘
l-BCFM*NBHF7JFXΛஔ͍ͨ 5BCMF7JFX3PXΛࢁ࡞ͬͯ 5BCMF7JFXͰදࣔ͢Δz 5BCMF7JFXͷΞϓϩʔν 5JUBOJVN͘͘ձJO/*'5:
l-BCFM*NBHF7JFXΛஔ͍ͨ 5BCMF7JFX3PXΛࢁ࡞ͬͯ 5BCMF7JFXͰදࣔ͢Δz 5BCMF7JFXͷΞϓϩʔν 5JUBOJVN͘͘ձJO/*'5: ύϑΥʔϚϯεͷϘτϧωοΫ
l-JTU7JFXͷ্Ͱ -BCFM*NBHF7JFXΛ Ͳ͏දࣔ͢Δͷ͔Λ༧ΊܾΊ͓ͯ͘z -JTU7JFXͷΞϓϩʔν 5JUBOJVN͘͘ձJO/*'5:
l-JTU7JFXͷ্Ͱ -BCFM*NBHF7JFXΛ Ͳ͏දࣔ͢Δͷ͔Λ༧ΊܾΊ͓ͯ͘z -JTU7JFXͷΞϓϩʔν ΞΠςϜςϯϓϨʔτ 5JUBOJVN͘͘ձJO/*'5:
ίʔυΛݟͤΖ 5JUBOJVN͘͘ձJO/*'5: ͬ͝ͱ
var plain_template = { childTemplates: [{ type: "Ti.UI.Label", bindId: "myLabel",
properties: { left: "10dp" }, events: { click: reportFunction } }] }; var list = Ti.UI.createListView({ templates: { plain: plain_template }, defaultItemTemplate: "plain" }); 5JUBOJVN͘͘ձJO/*'5: ςϯϓϨʔτͷઃఆ
var data = []; [1,2,3,4,5].forEach(function (idx) { data.push({ myLabel: {
text: "Row #" + idx }, properties: { itemId: "item" + idx } }); }); var section = Ti.UI.createListSection({ items: data }); list.sections = [section]; 5JUBOJVN͘͘ձJO/*'5: ςϯϓϨʔτΛͬͯΞΠςϜΛ࡞Δ
5JUBOJVN͘͘ձJO/*'5: list.addEventListener( "itemclick", function (e) { // Get clicked item
reference var item = e.section.getItemAt(e.itemIndex); console.log(item.properties.itemId); // Replace clicked item e.section.UpdateItemAt(e.itemIndex, item); } ); -JTU7JFXͷΠϕϯτϋϯυϦϯά
-JTU7JFXͱ ܾΊͨͱ͓ΓͷܗͰσʔλΛදࣔͤ͞ΔͨΊͷͷ 5JUBOJVN͘͘ձJO/*'5:
ύϑΥʔϚϯε ͦΕͰɺ5BCMF7JFXΑΓੑೳྑ͍ͷ͔Ͷ 5JUBOJVN͘͘ձJO/*'5:
5JUBOJVN͘͘ձJO/*'5: 3PXT-JTU5BCMF 3PXΛ༻ҙ͢Δ࣌ؒಈ࡞ͷػහੑ .Z5BTL 3FOEFSJOHUJNFBU&QPDI NT *NBHF7JFX -BCFM -BCFM 5BCMF7JFX3PX
5JUBOJVN͘͘ձJO/*'5: )5$%FTJSF4 "OESPJE Y 4OBQESBHPO()[ .#3". (PPHMF/FYVT4 ˺
5JUBOJVN͘͘ձJO/*'5:
NT Y NT Y 1SFQBSF 1SFQBSF 5JUBOJVN͘͘ձJO/*'5:
5JUBOJVN͘͘ձJO/*'5: ੌ͍ 5JUBOJVN͘͘ձJO/*'5: ੌ͍ "OESPJEͰ͍ "OESPJEͰ͍
-JTU7JFX 5BCMF7JFX ˚ "OESPJE Y J1IPOF 4JNVMBUPS
Y J1IPOF Y ୯Ґ<NT> 5JUBOJVN͘͘ձJO/*'5:
5JUBOJVN͘͘ձJO/*'5: J04ޮՌൈ܈ J04"OESPJEڞʹ͍ J04ޮՌൈ܈ 5JUBOJVN͘͘ձJO/*'5: J04"OESPJEڞʹ͍
ͬͨίʔυ 5JUBOJVN͘͘ձJO/*'5: IUUQTHJUIVCDPNSZVHPP5JUBOJVN-JTU7JFX4BNQMF
5JUBOJVN͘͘ձJO/*'5: ʘʘaaᵋ Т ʯʗʗ ͜ΕͰղܾͩ ʘʘaaᵋ Т ʯʗʗ 5JUBOJVN͘͘ձJO/*'5: ͜ΕͰղܾͩ
éĕÕǤʌñʞìè 5JUBOJVN͘͘ձJO/*'5: ͪΖΜɺ·ͩɺશ͕ͯղܾ͢ΔΘ͚Ͱͳ͍
5JUBOJVN͘͘ձJO/*'5: ࣮ɺ·ͩ·ͩ"1*͕Γͯͳ͍ “A complete list of implemented features is schedule
for the next list version, which is planned for Release 3.2.0.”
5JUBOJVN͘͘ձJO/*'5: 1SPQT FEJUJOHFEJUBCMF TFQBSBUPS$PMPS4UZMF &WFOUT ESBHTUBSUESBHFOE TDSPMMTDSPMMFOE IFBEFS7JFXGPPUFS7JFX EFMFUFNPWF ʜ
ʜ
5JUBOJVN 5JUBOJVN͘͘ձJO/*'5: Β͍͠ 8BJUJOH
·ͱΊ 5JUBOJVN͘͘ձJO/*'5: $PODMVTJPO
-JTU7JFX͍ 5JUBOJVN͘͘ձJO/*'5: 5BCMF7JFXͷYY͙Β͍͍
ͪΐͬͱ͍͠ 5JUBOJVN͘͘ձJO/*'5: 5BCMF7JFX΄Ͳͷॊೈੑແ͍
·్࣮ͩத 5JUBOJVN͘͘ձJO/*'5: 5JUBOJVNͰҰ௨Γͷ࣮͕ऴΘΔΒ͍͠
Ͱ͍ 5JUBOJVN͘͘ձJO/*'5: ෳࡶͳॲཧΛΘͳ͚Εेʹ͑Δ
ࢼ͢Ձ͋Γ 5JUBOJVN͘͘ձJO/*'5: 5BCMF7JFX͚͔ͩ͠Θͳ͍ͷମͳ͍
CODESTRONG ! 5JUBOJVN͘͘ձJO/*'5: