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
440
チーム開発と Android アプリの構成
ryugoo
5
1.2k
開発 4 年目のアプリへの Kotlin 導入
ryugoo
1
2.7k
Either で想定内のエラーと想定外のエラーを別ものにしたい!
ryugoo
2
1.7k
全て S になる -RxJava と LWS を持ち込む楽しさ-
ryugoo
4
770
Transition at RxJava 1.x to 2.x
ryugoo
0
550
Kotlin さんと誕生日が近いだけの男の話
ryugoo
2
520
Android エンジニアになって 2 年の学び
ryugoo
1
2.7k
Other Decks in Technology
See All in Technology
從裝潢設計圖到 Home Assistant:打造智慧家庭的實戰與踩坑筆記
kewang
0
150
【AWS reInvent 2025 関西組 事前勉強会】re:Inventの“感動と興奮”を思い出してモチベ爆上げしたいです
ttelltte
0
130
ピープルウエア x スタートアップ
operando
3
3.8k
Design and implementation of "Markdown to Google Slides" / phpconfuk 2025
k1low
1
380
AIエージェントは「使う」だけじゃなくて「作る」時代! 〜最新フレームワークで楽しく開発入門しよう〜
minorun365
10
1.5k
Black Hat USA 2025 Recap ~ クラウドセキュリティ編 ~
kyohmizu
0
490
AWS IAM Identity Centerによる権限設定をグラフ構造で可視化+グラフRAGへの挑戦
ykimi
2
680
Sansan BIが実践する AI on BI とセマンティックレイヤー / data_summit_findy
sansan_randd
0
130
AI時代におけるドメイン駆動設計 入門 / Introduction to Domain-Driven Design in the AI Era
fendo181
0
630
プログラミング言語を書く前に日本語を書く── AI 時代に求められる「言葉で考える」力/登壇資料(井田 献一朗)
hacobu
PRO
0
110
Pythonで構築する全国市町村ナレッジグラフ: GraphRAGを用いた意味的地域検索への応用
negi111111
8
3.3k
設計は最強のプロンプト - AI時代に武器にすべきスキルとは?-
kenichirokimura
1
340
Featured
See All Featured
Code Reviewing Like a Champion
maltzj
527
40k
Balancing Empowerment & Direction
lara
5
730
YesSQL, Process and Tooling at Scale
rocio
174
15k
Into the Great Unknown - MozCon
thekraken
40
2.1k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Speed Design
sergeychernyshev
32
1.2k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
34
2.3k
Raft: Consensus for Rubyists
vanstee
140
7.2k
Become a Pro
speakerdeck
PRO
29
5.6k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
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: