Upload
chanhyeong-lee
View
33
Download
0
Embed Size (px)
Citation preview
Lesson����������� ������������������ 5.����������� ������������������ Rich����������� ������������������ and����������� ������������������ Responsive����������� ������������������ Layouts
도우미����������� ������������������ 이찬형
Intro����������� ������������������ to����������� ������������������ Lesson����������� ������������������ 5
•Store����������� ������������������ the����������� ������������������ data����������� ������������������
•display����������� ������������������ the����������� ������������������ data����������� ������������������
•We’re����������� ������������������ ready����������� ������������������ to����������� ������������������ build����������� ������������������ rich����������� ������������������ UI
Android����������� ������������������ Design����������� ������������������ Principles(1)
•Users����������� ������������������ judge����������� ������������������ the����������� ������������������ quality����������� ������������������ of����������� ������������������ your����������� ������������������ app����������� ������������������ within����������� ������������������ the����������� ������������������ first����������� ������������������ 30����������� ������������������ seconds����������� ������������������
•judgement����������� ������������������ will����������� ������������������ be����������� ������������������ based����������� ������������������ not����������� ������������������ on����������� ������������������ the����������� ������������������ functionality,����������� ������������������ but����������� ������������������ on����������� ������������������ the����������� ������������������ visual����������� ������������������ aesthetics
Android����������� ������������������ Design����������� ������������������ Principles(2)•look����������� ������������������ polished����������� ������������������
•look����������� ������������������ professional����������� ������������������
•easy����������� ������������������ to����������� ������������������ use����������� ������������������
•fun����������� ������������������ to����������� ������������������ use����������� ������������������
•short����������� ������������������ and����������� ������������������ frictionless����������� ������������������
•let����������� ������������������ users����������� ������������������ touch����������� ������������������ and����������� ������������������ interact����������� ������������������ with����������� ������������������ objects����������� ������������������
•rich����������� ������������������ imagery����������� ������������������ and����������� ������������������ pictures����������� ������������������
•provide����������� ������������������ simple����������� ������������������ shortcuts����������� ������������������ to����������� ������������������ complete����������� ������������������ complex����������� ������������������ tasks
Enjoyable����������� ������������������ Apps
•What����������� ������������������ makes����������� ������������������ your����������� ������������������ favorite����������� ������������������ apps����������� ������������������ enjoyable����������� ������������������ to����������� ������������������ use����������� ������������������ ?
Recap����������� ������������������ on����������� ������������������ Views����������� ������������������ and����������� ������������������ ViewGroups(1)
•a����������� ������������������ view����������� ������������������ handles����������� ������������������ drawing����������� ������������������ and����������� ������������������ event����������� ������������������ handling����������� ������������������
•text����������� ������������������ field,����������� ������������������ buttons,����������� ������������������ drop����������� ������������������ down����������� ������������������ menu,����������� ������������������ checkboxes,����������� ������������������ radio����������� ������������������ button,����������� ������������������ on/off����������� ������������������ switch,����������� ������������������ progress����������� ������������������ bar
Recap����������� ������������������ on����������� ������������������ Views����������� ������������������ and����������� ������������������ ViewGroups(2)
•A����������� ������������������ view����������� ������������������ group����������� ������������������ is����������� ������������������ a����������� ������������������ container����������� ������������������ for����������� ������������������ children����������� ������������������ views
Recap����������� ������������������ on����������� ������������������ Views����������� ������������������ and����������� ������������������ ViewGroups(3)
Recap����������� ������������������ on����������� ������������������ Views����������� ������������������ and����������� ������������������ ViewGroups(4)
Recap����������� ������������������ on����������� ������������������ Views����������� ������������������ and����������� ������������������ ViewGroups(5)
Recap����������� ������������������ on����������� ������������������ Views����������� ������������������ and����������� ������������������ ViewGroups(6)
Building����������� ������������������ Todays����������� ������������������ List����������� ������������������ Item
•Use����������� ������������������ the����������� ������������������ same����������� ������������������ place����������� ������������������ holder����������� ������������������ image����������� ������������������
•Use����������� ������������������ the����������� ������������������ same����������� ������������������ IDs����������� ������������������
•SimpleCusorAdapter����������� ������������������ only����������� ������������������ supports����������� ������������������ one����������� ������������������ item����������� ������������������ view����������� ������������������ types
•newView����������� ������������������ method����������� ������������������ knows����������� ������������������ how����������� ������������������ to����������� ������������������ return����������� ������������������ a����������� ������������������ new����������� ������������������ list����������� ������������������ layout,����������� ������������������ but����������� ������������������ doesn’t����������� ������������������ contain����������� ������������������ data����������� ������������������ yet����������� ������������������
•bindView����������� ������������������ method����������� ������������������ knows����������� ������������������ how����������� ������������������ to����������� ������������������ take����������� ������������������ an����������� ������������������ existing����������� ������������������ layout����������� ������������������ and����������� ������������������ update����������� ������������������ it����������� ������������������ with����������� ������������������ the����������� ������������������ data
Cursor����������� ������������������ Adapter
•getViewTypeCount����������� ������������������ return����������� ������������������ to����������� ������������������ two����������� ������������������ for����������� ������������������ the����������� ������������������ two����������� ������������������ different����������� ������������������ layouts����������� ������������������
•getItemViewType����������� ������������������ return����������� ������������������ to����������� ������������������ VIEW_TYPE_TODAY����������� ������������������ or����������� ������������������ VIEW_TYPE_FUTURE_DAY����������� ������������������
•modify����������� ������������������ newView����������� ������������������ method����������� ������������������
•bindView
Two����������� ������������������ Item����������� ������������������ View����������� ������������������ Types
•To����������� ������������������ remove����������� ������������������ unnecessary����������� ������������������ findViewById����������� ������������������ calls,����������� ������������������ we����������� ������������������ can����������� ������������������ use����������� ������������������ the����������� ������������������ View����������� ������������������ Holder����������� ������������������ Pattern����������� ������������������
•Set����������� ������������������ the����������� ������������������ ViewHolder����������� ������������������ as����������� ������������������ the����������� ������������������ tag����������� ������������������ of����������� ������������������ the����������� ������������������ view
Using����������� ������������������ the����������� ������������������ viewHolder����������� ������������������ Pattern
•날짜����������� ������������������
•온도����������� ������������������
•http://kakaoplus.tistory.com/68
Formatting����������� ������������������ Strings
Coding����������� ������������������ the����������� ������������������ Details����������� ������������������ Screen
•Break����������� ������������������ up����������� ������������������ the����������� ������������������ UI����������� ������������������ into����������� ������������������ smaller����������� ������������������ components����������� ������������������
•Move����������� ������������������ DetailFragment����������� ������������������ to����������� ������������������ new����������� ������������������ file
Coding����������� ������������������ the����������� ������������������ Details����������� ������������������ Screen
Optimizing����������� ������������������ Layouts
•Inflating����������� ������������������ complex����������� ������������������ layouts����������� ������������������ can����������� ������������������ be����������� ������������������ expensive����������� ������������������
•keep����������� ������������������ your����������� ������������������ layout����������� ������������������ shallow����������� ������������������ and����������� ������������������ wide,����������� ������������������ rather����������� ������������������ than����������� ������������������ deep����������� ������������������ and����������� ������������������ narrow
Responsive����������� ������������������ Design•What����������� ������������������ does����������� ������������������ it����������� ������������������ look����������� ������������������ like����������� ������������������ on����������� ������������������ the����������� ������������������ tablet����������� ������������������
•Combining����������� ������������������ multiple����������� ������������������ views����������� ������������������ into����������� ������������������ One����������� ������������������
•It’ll����������� ������������������ be����������� ������������������ used����������� ������������������ across����������� ������������������ a����������� ������������������ range����������� ������������������ of����������� ������������������ different����������� ������������������ device����������� ������������������ screen����������� ������������������ sizes
Splitting����������� ������������������ Devices����������� ������������������ into����������� ������������������ Buckets
•http://www.kmshack.kr/%EC%95%88%EB%93%9C%EB%A1%9C%EC%9D%B4%EB%93%9C-%EC%95%B1-%EA%B0%9C%EB
Resource����������� ������������������ Folder����������� ������������������ Qualifiers
•The����������� ������������������ Android����������� ������������������ resource����������� ������������������ framework����������� ������������������
•Android����������� ������������������ allows����������� ������������������ you����������� ������������������ to����������� ������������������ create����������� ������������������ alternative����������� ������������������ versions����������� ������������������ of����������� ������������������ every����������� ������������������ resource����������� ������������������ by����������� ������������������ placing����������� ������������������ them����������� ������������������ into����������� ������������������ folders����������� ������������������ with����������� ������������������ different����������� ������������������ qualifiers
Images����������� ������������������ for����������� ������������������ Different����������� ������������������ Densities
Adding����������� ������������������ Images����������� ������������������ to����������� ������������������ the����������� ������������������ App
Why����������� ������������������ Do����������� ������������������ we����������� ������������������ Need����������� ������������������ Fragments
•Allow����������� ������������������ us����������� ������������������ to����������� ������������������ fully����������� ������������������ modularize����������� ������������������ our����������� ������������������ activities����������� ������������������
•Fragments����������� ������������������ were����������� ������������������ first����������� ������������������ introduced����������� ������������������ in����������� ������������������ Honeycomb����������� ������������������ to����������� ������������������ solve����������� ������������������ a����������� ������������������ particular����������� ������������������ problem
Why����������� ������������������ we����������� ������������������ Don’t����������� ������������������ Only����������� ������������������ Use����������� ������������������ Fragments
How����������� ������������������ Fragments����������� ������������������ Work•http://blog.saltfactory.net/190
Try����������� ������������������ the����������� ������������������ fragment����������� ������������������ manager
Fragments����������� ������������������ with����������� ������������������ No����������� ������������������ UI
Sunshine����������� ������������������ Resource����������� ������������������ Folders•http://developer.android.com/guide/practices/screens_support.html#ConfigurationExamples