рдЕрдм рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ: рдПрдВрдбреНрд░реЙрдЗрдб рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рджрд┐рд╢рд╛рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЛ рдкрдврд╝рддреЗ рд╣реБрдП, рдЖрдкрдХреЛ рдпрд╣ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рдЖрдпрд╛ рдХрд┐ рдпрд╣ рд╕рдм, рдЬрд╝рд╛рд╣рд┐рд░ рд╣реИ, рднрдпрд╛рдирдХ рд╣реИ, рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рдЖрдкрдХреЛ рд╣реЛрд▓реЛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреА рддрд░рд╣ рджрд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдкреБрд░рд╛рдиреЗ (2.3 <) рдПрдВрдбреНрд░реЙрдЗрдб рдкрд░ рдЖрдзреА рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдлрд╛рд╡рдбрд╝рд╛ рдХрд░рдирд╛ рд╣реЛрдЧрд╛?
рдпрд╛ рддреЛ: рдкрд┐рдЫрд▓реЗ Android рдореЗрдВ рд╕рд┐рд░реНрдл рдПрдХ рдХрдорд╛рд▓ рдХреА рд╕реБрд╡рд┐рдзрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рдЖрдкрдХреЛ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ?
рд╕рдмрд╕реЗ рдкрд╣рд▓реА рдЪреАрдЬ рдЬреЛ рджрд┐рдорд╛рдЧ рдореЗрдВ рдЖрддреА рд╣реИ: рдПрдХреНрд╢рдирдмреЗрд░ рдФрд░ рдПрдХреНрд╢рдирдмреЗрд░рд▓реЙрдХред
ABS рдмрдврд╝рд┐рдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдк рдЕрдХреЗрд▓реЗ ActionBar рд╕реЗ рдирд╣реАрдВ рдорд┐рд▓ рд╕рдХрддреЗред рд╣рдо рдПрдХ Holo рд╡рд┐рд╖рдп рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рди рдХрд┐ рдХреЗрд╡рд▓ рдПрдХ Holo рдмрд╛рд░, рд▓рд╛рдирдд рд╣реИред
рдПрд╣, рд╕реВрдЪрд┐рдпреЛрдВ рдкрд░ рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рдЖрдХрд░реНрд╖рдХ ActionMode рд▓рд╛рдпрдХ рд╣реИ ...
рдореБрдЭреЗ рдЖрдкрдХреЛ HoloEverywhere рд╕реЗ рдорд┐рд▓рд╡рд╛рддреЗ рд╣реИрдВ - рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдЬрд┐рд╕рдХрд╛ рд▓рдХреНрд╖реНрдп Android 1.6 рдФрд░ рдкреБрд░рд╛рдиреЗ Android рдХреЗ Holo рд╕реНрдЯрд╛рдЗрд▓, Holo рд╡рд┐рдЬреЗрдЯ рдФрд░ рдЕрдиреНрдп рдЪрд┐рдкреНрд╕ рдХреЛ рдкреЛрд░реНрдЯ рдХрд░рдирд╛ рд╣реИред








рдЗрди рд╕рднреА рд╕реНрдХреНрд░реАрдирд╢реЙрдЯреНрд╕ рдХреЛ рдПрдВрдбреНрд░реЙрдЗрдб 2.1 (ABS рдХреЗ рд▓рд┐рдП рдиреНрдпреВрдирддрдо рдПрдВрдбреНрд░реЙрдЗрдб рд╡рд░реНрдЬрди рдкрд░ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди HoloEverywhere 1.6 рдЕрдХреНрд╖рдо рдПрдмреАрдПрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ)ред
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХреНрдпрд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:
- рдХрдИ рд╡рд┐рдЬреЗрдЯреНрд╕ рдХреЛ рд╕реНрдЯрд╛рдЗрд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреИрд╕реЗ рдХрд┐ рдмрдЯрди, рдЯреЙрдЧрд▓рдмрдЯрди, рд░реЗрдбрд┐рдпреЛрдмрдЯрди, рдЪреЗрдХрдмреЙрдХреНрд╕, рд╕реНрдкрд┐рдирд░, (рдорд▓реНрдЯреА) рдСрдЯреЛрдХреИрдореНрдкрд▓рдЯреЗрдХреНрд╕реНрдЯ рд╡реНрдпреВ, рд░реЗрдЯрд┐рдВрдЧрдмрд╛рд░, рдкреНрд░реЛрдЧреНрд░реЗрд╕рдмрд╛рд░, рд╕реАрдХрдмрд╛рд░ рдФрд░ рдЕрдиреНрдп рдбреЗрд░рд┐рд╡реЗрдЯрд┐рд╡ред рдЗрд╕рдореЗрдВ рднреА рдкреЛрд░реНрдЯ рдХрд┐рдП рдЧрдП рд╣реИрдВ: рд╕реНрд╡рд┐рдЪ, рдирдВрдмрд░рдкрд┐рдХрд░, рдХреИрд▓реЗрдВрдбрд░ рд╡реНрдпреВ, рдбреЗрдЯрдкрд┐рдХрд░, рдЯрд╛рдЗрдордкрд┐рдХрд░
- AlertDialog, ProgressDialog рдкреЛрд░реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛, рдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ рдбрд╛рдпрд▓реЙрдЧ рд╕реНрдЯрд╛рдЗрд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ (рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, AlertDialog internals рд╡рд┐рд╖рдп рдХреЗ рдЖрд╕рд╛рди рдкреЛрд░реНрдЯрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рднреА рдмрдВрдж рд╣реИрдВ, рдореБрдЭреЗ рдЗрд╕рдХрд╛ рд╕рднреА рдХреЛрдб рдЦреАрдВрдЪрдирд╛ рдкрдбрд╝рд╛ рдФрд░ рдорд╛рдирдХ AlertDialog рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдВрд╕реНрдХрд░рдг рдЕрдкреВрд░реНрдг рдмрдирд╛ рджрд┐рдпрд╛ рдЧрдпрд╛)
- рд╕рдВрдкреВрд░реНрдг рд╡рд░реАрдпрддрд╛ рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреЛ рдкреЛрд░реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, SupportSaringPreferences рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬреЛ рд╡рд┐рднрд┐рдиреНрди рд╕реЗрдЯ рдФрд░ JSON рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ / рд╕рд░рдгрд┐рдпрд╛рдБ рд▓рд┐рдЦ рд╕рдХрддрд╛ рд╣реИ (рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдмреВрди рдХреА рддрд░рд╣ рд╣реИ :))
- рдЧрддрд┐рд╡рд┐рдзрд┐ рдХреЗ рд▓рд┐рдП рдереАрдо рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЫреЛрдЯреА
рдмрд╛рдЗрдХ рд╕рд╣рд╛рдпрдХ - рд╣рд░ рдЬрдЧрд╣ рдЖрдк рдЕрдкрдиреЗ LayoutInflater
рдХреА рдПрдХ рдФрд░ рдмрд╛рдЗрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рдПрдХ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдирд╛рдо рдХреЗ рд╕рд╛рде рдЖрдкрдХреЗ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рдмрдврд╝рд╛ рд╕рдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкрд╣рд▓реЗ рдЖрдкрдиреЗ рдпрд╣ рд▓рд┐рдЦрд╛ рдерд╛:
<com.myapppackage.widgets.MySuperView ... />
рдФрд░ рдЕрдм, рдпрджрд┐ рдЖрдк рдЖрд╡реЗрджрди рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рд╕рд╣реА рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд╕рд╛рде рд╕рд╣реА рдкрджреНрдзрддрд┐ рдХрд╛ рдЖрд╣реНрд╡рд╛рди рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдмрд╕ MySuperView рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдпрд╣ рдХрд╛рдо рдХрд░реЗрдЧрд╛ рдЬрд╣рд╛рдБ HE рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рд╡рд░реНрддрдорд╛рди рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рднреАрддрд░, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ)ред
рдпрд╣ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рднреА рд╣реИ рдХрд┐ рдЖрдк рд╕рд┐рд╕реНрдЯрдо рд╡рд┐рдЧреЗрдЯреНрд╕ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рдмрд┐рдирд╛ рд╕рд┐рд╕реНрдЯрдо рд╡рд┐рдЧреЗрдЯреНрд╕ рдХреЛ рдЕрдкрдиреЗ рд╕рд╛рде рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рд╡рд┐рдЧреЗрдЯреНрд╕ рдХреЛрдб рд╕реЗ рдмрдирд╛рдП рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ рдХреБрдЫ рднреА рдирд╣реАрдВ рдХрд░рдирд╛ рд╣реИред
- рджрд░рдЕрд╕рд▓, ActionMode, рдЬрд┐рд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореИрдВрдиреЗ рдкреЛрд╕реНрдЯ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдерд╛ред рд╕рдВрд╡рд░реНрдзрд┐рдд рд╕реВрдЪреА рджреГрд╢реНрдп рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди, рдЖрдкрдХреЛ ABS рд╕реЗ ActionMode рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ
рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд░рд┐рдкреЛрдЬрд┐рдЯрд░реА:
github.com/ChristopheVersieux/HoloEverywhereрдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕реЗ рдЬреБрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╣реА рдирд┐рд░реНрджреЗрд╢ рд╣реИред
рдПрдкреАрдХреЗ рдбреЗрдореЛ
рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ ред
рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рдпрд╣ рд╕рдм рдЕрднреА рдХреЗ рд▓рд┐рдП рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдк рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ - рдпрд╛ рддреЛ рд╕рдмрд╕реЗ рдкреНрд░рддреНрдпрдХреНрд╖ рддрд░реАрдХреЗ рд╕реЗ (рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдХрд╛рдВрдЯрд╛, рдЬреЛрдбрд╝, рдПрдХ рдкреБрд▓ рдЕрдиреБрд░реЛрдз рднреЗрдЬреЗрдВ), рдпрд╛ рдПрдХ рдирдИ рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд╡рд┐рд╡рд░рдг рдХреЗ рд╕рд╛рде рдПрдХ рд╕реБрд╡рд┐рдзрд╛ рдЕрдиреБрд░реЛрдз рдЦреЛрд▓реЗрдВ, рдпрд╛ рдЕрдВрдд рдореЗрдВ рдкреАрдПрдо рдХреЛ рдПрдХ рдкрддреНрд░ рднреЗрдЬреЗрдВ :)