рдкреНрд░рд╕реНрддрд╛рд╡рдирд╛
рдПрдВрдбреНрд░реЙрдЗрдб рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддреЗ рд╕рдордп, рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ, рдЖрдкрдХреЛ рд╕рднреА рд╕рдВрднрд╛рд╡рд┐рдд рдкрд┐рдХреНрд╕реЗрд▓ рдШрдирддреНрд╡реЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдВрд╕рд╛рдзрди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ, рдХреЗрд╡рд▓ рддреАрди рдРрд╕реЗ рдШрдирддреНрд╡ рдереЗ:
ldpi ,
mdpi рдФрд░
hdpi ред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдкреНрд░рдЧрддрд┐ рдЕрднреА рднреА рд╕реНрдерд┐рд░ рдирд╣реАрдВ рд╣реИ: рд╕реНрдХреНрд░реАрди рдХреЗ рдкрд┐рдХреНрд╕реЗрд▓ рдШрдирддреНрд╡ рдкрд╛рдЧрд▓ рдорд╛рдиреЛрдВ рдХреЗ рд▓рд┐рдП рдмрдврд╝ рд░рд╣реЗ рд╣реИрдВ, рдЬрдмрдХрд┐ Google рдЪреБрдкрдЪрд╛рдк "x" рдЕрдХреНрд╖рд░ рдкрд░
рдирдЬрд╝рд░ рд░рдЦрддрд╛ рд╣реИ рдФрд░
xxxhdpi рдХреЛ рдорд┐рд▓рд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдЫрд╣ рдореБрдЦреНрдп рд╕реНрдХреНрд░реАрди рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╣реИрдВред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдпрджрд┐ рдЖрдк рдирд┐рдпрдореЛрдВ рд╕реЗ рдЦреЗрд▓рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдкреНрд░рддрд┐ рдЖрдЗрдХрди рдЖрдзрд╛ рджрд░реНрдЬрди рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рдмрдЪрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рд╕рдм рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдХреБрдЫ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдореЗрдВ рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд░рд╛рдЬреНрдп рд╣реИрдВред рдПрдХреНрд╢рди рдмрд╛рд░ рдХреЗ рдмрдЯрдиреЛрдВ рдореЗрдВ рджреЛ рдЕрд╡рд╕реНрдерд╛рдПрдБ рд╣реЛрддреА рд╣реИрдВ, рдФрд░ рдпрд╣ рдЕрднреА рднреА рдЬрд╣рд╛рдБ рднреА рдЬрд╛рддреА рд╣реИ, рд▓реЗрдХрд┐рди рд╕рд╛рдзрд╛рд░рдг рдмрдЯрди рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╣реЛрддреЗ рд╣реИрдВред
рдХрдИ рд╕рдорд╛рдзрд╛рди рд╣реИрдВ: рдЖрдк рдХрд▓рд╛рдХрд╛рд░ рдХреЛ рдпрд╛рддрдирд╛ рджреЗ рд╕рдХрддреЗ рд╣реИрдВ, рдЖрдк рдХрдИ рдШрдирддреНрд╡реЛрдВ рдХреЗ рд╕рдорд░реНрдерди рдкрд░ рдереВрдХ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЖрд╢рд╛ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд╕рд┐рд╕реНрдЯрдо рдЙрдиреНрд╣реЗрдВ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рд╕реНрдХреЗрд▓ рдХрд░реЗрдЧрд╛, рдпрд╛ рдЖрдк рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХрд╛ рд▓рд╛рдн рдЙрдард╛ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ: рд╕реНрд╡рдЪрд╛рд▓рдиред рдРрд╕реЗ рд╡рд┐рднрд┐рдиреНрди рдЙрдкрдХрд░рдг рд╣реИрдВ рдЬрд┐рдирдХреЗ рджреНрд╡рд╛рд░рд╛ рдЗрд╕ рд╡реНрдпрд╡рд╕рд╛рдп рдХреЛ рдЪрд▓рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╕рдмрд╕реЗ рдЙрдиреНрдирдд рд╢рд╛рдпрдж
рдПрдВрдбреНрд░реЙрдЗрдб рдПрд╕реЗрдЯ рд╕реНрдЯреВрдбрд┐рдпреЛ рд╣реИ ред рдпрд╣ рдПрдХ рдмрд╣реБрдд рд╣реА рд╕рдордЭрджрд╛рд░ рдЙрдкрдХрд░рдг рд╣реИ, рд▓реЗрдХрд┐рди, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдЖрдЗрдХрди рдХреЗрд╡рд▓ рдорд╛рдирдХ рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рд╡рд╣рд╛рдВ рдЦреАрдВрдЪреЗ рдЬрд╛рддреЗ рд╣реИрдВ, рдФрд░ рдпрджрд┐ рдЖрдкрдХреЛ рдЕрдкрдиреА рдЕрдиреВрдареА рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдмрдЯрди рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рд╡рд╣ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдпрд╣рд╛рдВ рдХреЛрдИ рдорджрдж рдирд╣реАрдВ рд╣реИред рдФрд░ рдпрд╣рд╛рдБ рдХреБрдЦреНрдпрд╛рдд рдЙрдкрдХрд░рдг рдореЗрдВ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдорд░реНрдерди рд╣рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛: Adobe Photoshopред рдкреВрд░реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЗ рд╡рд┐рдирдореНрд░ рд╕реЗрд╡рдХ рдиреЗ рдЦреБрдж рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдорд╛рди рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП рдХрдИ рдЙрдкрдХрд░рдг рд▓рд┐рдЦреЗ рдФрд░ рдЕрдм рдЙрдиреНрд╣реЗрдВ рдкрд╛рдардХреЛрдВ рдХреЗ рд╕рд╛рде рд╕рд╛рдЭрд╛ рдХрд░рддрд╛ рд╣реИред рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВ, рдФрд░ рд╡реЗ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ, рдореИрдВ рдЖрдЧреЗ рд╡рд░реНрдгрди рдХрд░реВрдВрдЧрд╛ред рд╕рднреА рд╕реНрд░реЛрдд
BitBucket рдкрд░ рд╣реИрдВ, рдФрд░ рдпрд╣рд╛рдВ рдореИрдВ рдЖрдкрдХреЛ рдореБрдЦреНрдп рдмрд┐рдВрджреБ рдмрддрд╛рдКрдВрдЧрд╛ рдФрд░ рдлрд╝реЛрдЯреЛрд╢реЙрдк рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рдХреБрдЫ рдЧреБрд░ рджрд┐рдЦрд╛рдКрдВрдЧрд╛ рдЬреЛ рд╢реБрд░реБрдЖрддреА рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдмрд╕ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдореИрдВ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдореИрдВрдиреЗ рдЙрдиреНрд╣реЗрдВ рдлрд╝реЛрдЯреЛрд╢реЙрдк CS6 рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦрд╛ рдерд╛ред
рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛
рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐ рдЖрдк рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдВ, рдЖрдкрдХреЛ
рдкреВрд░реНрд╡рд╡рд░реНрддреА рдХреЗ
рд▓реЗрдЦ рдХрд╛ рд▓рд┐рдВрдХ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬреЛ рдлреЛрдЯреЛрд╢реЙрдк рдХреЗ рд▓рд┐рдП рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦрдиреЗ рдХреА рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд░рддрд╛ рд╣реИред рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, рдЗрд╕рдХреЗ рд▓рд┐рдП рдорд╛рдирдХ рдЙрдкрдХрд░рдг рдПрдХреНрд╕реНрдЯреЗрдВрдбрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЯреВрд▓рдХрд┐рдЯ рд╣реИ, рдЬрд┐рд╕реЗ рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рд╕рдВрдкрд╛рджрдХ рдХреЗ рд╕рд╛рде рд╣реА рд╡рд┐рддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдореБрдЭреЗ рдЗрд╕ рдмрд╛рдд рдкрд░ рджреБрдЦреА рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдореИрдВ рдЙрдкрд░реЛрдХреНрдд рд▓реЗрдЦ рдХреЗ рд▓реЗрдЦрдХ рд╕реЗ рдмрд┐рд▓реНрдХреБрд▓ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ рд╕рдВрдкрд╛рджрдХ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрд╛рдлреА рдмреЗрд╡рдХреВрдл рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рдХреНрдпрд╛ рд╣реИ, рдпрд╣ рд╣реИред рдЖрдк рд╕реАрдзреЗ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдмреЗрд╢рдХ, рдФрд░ рдЗрд╕рдореЗрдВ рдирд╣реАрдВ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рдбреАрдмрдЧрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХреЗ рд╕рд╛рде рджреЛрд╕реНрдд рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛ред рдлрд╝реЛрдЯреЛрд╢реЙрдк рдореЗрдВ рдирд┐рд░реНрдорд┐рдд рдлрд╝рдВрдХреНрд╢рдВрд╕ рдкрд░ F1 рдмрдЯрди рдФрд░ рдбреЙрдХреНрдпреВрдореЗрдВрдЯреЗрд╢рди рдкрд░ рд╣реИ, рдЬреЛ рдХрд┐ рдПрдбрд┐рдЯрд░ рдХреА рд╣реА рддрд░рд╣ рдЕрд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ, рд▓реЗрдХрд┐рди рдХрдо рд╕реЗ рдХрдо рдЗрд╕рдХрд╛ рдореБрдЦреНрдп рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИред рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕реНрд╡рдпрдВ рд╡рд┐рднрд┐рдиреНрди рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рд▓рд┐рдЦреА рдЬрд╛ рд╕рдХрддреА рд╣реИрдВ, рдФрд░ рдореИрдВрдиреЗ рд╕реНрд╡рдпрдВ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИред

рд╕рднреА рдШрдирддреНрд╡ рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрдЗрдХрди рдмрдирд╛рдирд╛
рд╣рдорд╛рд░реА рднреЗрдбрд╝реЛрдВ рдХреА рдУрд░ рд▓реМрдЯрддреЗ рд╣реБрдП, рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА рд▓рд┐рдЦрд┐рдд рд▓рд┐рдкрд┐рдпреЛрдВ рдХреЛ рджреЛ рднрд╛рдЧреЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ: рдЙрдирдореЗрдВ рд╕реЗ рдХреБрдЫ рд╕реАрдзреЗ рдЖрд╡рд╢реНрдпрдХ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреЛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ (рд╡реЗ рд╕рднреА "рдореЗрдХ" рд╢рдмреНрдж рд╕реЗ рд╢реБрд░реВ рд╣реЛрддреЗ рд╣реИрдВ, рдЬрдмрдХрд┐ рдЕрдиреНрдп рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреА рднреВрдорд┐рдХрд╛ рдирд┐рднрд╛рддреЗ рд╣реИрдВред рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдФрд░ рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рдЙрдкрдХрд░рдг
MakeForAllDensities рд╣реИ , рдЬреЛ рдирд╛рдо рдХрд╛ рдЕрд░реНрде рд╣реИ рдЬреЛ рдХрд░рддрд╛ рд╣реИ: рдПрдХ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рд╕реЗ рд╕рднреА рдШрдирддреНрд╡реЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдВрд╕рд╛рдзрди рдмрдирд╛рддрд╛ рд╣реИред рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдБ рд╣реИрдВ:
- рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЛ mdpi рдХреЗ рдкрд┐рдХреНрд╕реЗрд▓ рдШрдирддреНрд╡ рдХреЗ рд▓рд┐рдП рдмрдирд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕реЗ рдЖрдзрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдлрд┐рд░ рд╡рд╛рдВрдЫрд┐рдд рдЖрдХрд╛рд░ рдореЗрдВ рд╕реНрдХреЗрд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
- рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХрд╣реАрдВ рд╕рд╣реЗрдЬрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рддрд╛рдХрд┐ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдкрдврд╝реЗ (рдФрд░ рдпрд╣ рднреА рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдиреМ-рдкреИрдЪ рд╣реИ , рдЙрдкрд╕рд░реНрдЧ ".9" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ)ред рдПрдВрдбреНрд░реЙрдЗрдб рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд░реВрдЯ рдлрд╝реЛрд▓реНрдбрд░ рдХреЗ рдПрдХ рд╕рдмрдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╕рд╣реЗрдЬрдирд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╣реИ, рдлрд┐рд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд░рд┐рд╕ рдлрд╝реЛрд▓реНрдбрд░ рдЦреБрдж рд╣реА рдорд┐рд▓ рдЬрд╛рдПрдЧрд╛ред
- рдЕрддрд┐рд░рд┐рдХреНрдд рдЖрд╡рд╢реНрдпрдХрддрд╛: рдпрджрд┐ рдпрд╣ рдиреМ-рдкреИрдЪ рд╣реИ, рддреЛ рд▓рд╛рдЗрдиреЛрдВ рдХреЛ рдПрдХ рдЕрд▓рдЧ рдкрд░рдд рдкрд░ рдЦреАрдВрдЪрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рд╕рдмрд╕реЗ рдХрдоред
- рдЦреИрд░, рдФрд░, рдЬрд╝рд╛рд╣рд┐рд░ рд╣реИ, рдЫрд╡рд┐ рд╡реЗрдХреНрдЯрд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рд░реЗрдЦрд╛рдкреБрдВрдЬ рдирд╣реАрдВ, рдЕрдиреНрдпрдерд╛ рдлрд╝реЛрдЯреЛрд╢реЙрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕реЗ рд╕реНрдХреЗрд▓ рдХрд░рдиреЗ рдореЗрдВ рдмрд╣реБрдд рдХрдо рдмрд┐рдВрджреБ рд╣реИ, рди рдХрд┐ рдПрдВрдбреНрд░реЙрдЗрдбред рдПрдХ рдЕрдкрд╡рд╛рдж рд╣реИ: рдпрд╣ рдиреМ-рдкреИрдЪ рд▓рд╛рдЗрдиреЛрдВ рдкрд░ рд▓рд╛рдЧреВ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рдФрд░ рд╡реЗ рд░реЗрдЦрд╛рдкреБрдВрдЬ рднреА рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред
рдпрджрд┐ рдЗрди рд╕рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЛ рдкреВрд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдмрд╛рдХреА рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рддрдХрдиреАрдХреА рдорд╛рдорд▓рд╛ рд╣реИ: рдлрд╝реЛрдЯреЛрд╢реЙрдк рдореЗрдВ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдЦреЛрд▓реЗрдВ рдФрд░ рдбрдмрд▓-рдХреНрд▓рд┐рдХ рдХрд░рдХреЗ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╢реБрд░реВ рдХрд░реЗрдВред рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЖрдкрдХреЛ рд╕рдВрд╕рд╛рдзрди (рд░реЗрд╕) рдХреЗ рд╕рд╛рде рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣реЗрдЧреА, рдФрд░ рдпрджрд┐ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдПрдХ рд╕рдмрдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╕рд╣реЗрдЬрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдПрдЧрд╛ рдХрд┐ рдЗрд╕реЗ рдХрд╣рд╛рдВ рд╕рд╣реЗрдЬрдирд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рдпрд╣ рдмрд╛рдХреА рдХреЛ рдЦреБрдж рд╕реЗ рдХрд░реЗрдЧрд╛ред
рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рдмрд╣реБрдд рд╕рд░рд▓ рд▓рдЧрддреА рд╣реИ:
рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ, рдЕрдЬреАрдм рдкрд╣рд▓реА рджреЛ рд▓рд╛рдЗрдиреЛрдВ рдХреЗ рдЕрдкрд╡рд╛рдж рдХреЗ рд╕рд╛рдеред рдкрд╣рд▓реА рдЕрдЬреАрдм рд░реЗрдЦрд╛ рдПрдХ рдирд┐рдпрдорд┐рдд рдЯрд┐рдкреНрдкрдгреА рдХреЗ рд╕рдорд╛рди рд╣реИ, рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рдЖрд╡рд╢реНрдпрдХ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдФрд░ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЖрдпрд╛рддред рдпрд╣
рдирдВрдмрд░ рдПрдХ рдЪрд╛рд▓ рд╣реИ , рдХреНрдпреЛрдВрдХрд┐ рдорд╛рдирдХ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдРрд╕реА рдЪрд┐рдк рд░реЛрд▓ рдирд╣реАрдВ рдХрд░рддреА рд╣реИред рджреВрд╕рд░реА рдЕрдЬреАрдм рд░реЗрдЦрд╛, рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдЖрд╕рд╛рдиреА рд╕реЗ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реИ рдХрд┐ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдлрд╝реЛрдЯреЛрд╢реЙрдк рдореЗрдВ рдЪрд▓рдирд╛ рдЪрд╛рд╣рд┐рдПред рдмрд╛рдХреА рд▓рд╛рдЗрдиреЗрдВ рдХреНрдпрд╛ рдХрд░рддреА рд╣реИрдВ, ResizingAndSaving.jsx рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдЦреБрд▓ рдЬрд╛рдПрдЧрд╛ред
detectFolder
рдпрд╣рд╛рдВ
detectFolder
рдирд╣реАрдВ рд▓рд╛рддрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдореЗрдВ рдХреБрдЫ рдЦрд╛рд╕ рдирд╣реАрдВ рд╣реИ: рдлрдВрдХреНрд╢рди рдпрд╣ рдЪреЗрдХ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд░реЗрдЬ рдлреЛрд▓реНрдбрд░ рдбреЙрдХреНрдпреВрдореЗрдВрдЯ рдлреЛрд▓реНрдбрд░ рдХреЗ рд╕рдмрдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╣реИ рдпрд╛ рдирд╣реАрдВ рдФрд░ рдЙрд╕реЗ рдпрд╣ рд╡рд╛рдкрд╕ рдорд┐рд▓ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рдпрд╣ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реЗ рдкреВрдЫрддрд╛ рд╣реИред рдФрд░ рдлрд┐рд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЕрдзрд┐рдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣рд┐рд╕реНрд╕рд╛ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИред
function saveForAllDensities(outputFolder, version, postfix, ninePatchLines) { if (!ninePatchLines) ninePatchLines = computeNinePatchLines(); var versionStr = version ? "-v" + version : ""; saveInFolder(outputFolder, "drawable-mdpi" + versionStr, 100, postfix, ninePatchLines); saveInFolder(outputFolder, "drawable-hdpi" + versionStr, 150, postfix, ninePatchLines); saveInFolder(outputFolder, "drawable-xhdpi" + versionStr, 200, postfix, ninePatchLines); saveInFolder(outputFolder, "drawable-xxhdpi" + versionStr, 300, postfix, ninePatchLines); saveInFolder(outputFolder, "drawable-xxxhdpi" + versionStr, 400, postfix, ninePatchLines); }
рдореИрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрд╕ рд╕рд╡рд╛рд▓ рдХрд╛ рдЬрд╡рд╛рдм рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ рдЕрдЧрд░ рдХрд┐рд╕реА рдХреЗ рдкрд╛рд╕ рдерд╛:
ldpi рдпрд╣рд╛рдВ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ Google
рдЗрд╕рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╕рдВрд╕рд╛рдзрди рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ ред рдЬреИрд╕рд╛ рдХрд┐ рдкрд╣рд▓реЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдлрд╝рд╛рдЗрд▓ рдиреМ-рдкреИрдЪ рд╣реЛ рд╕рдХрддреА рд╣реИ, рдЬреЛ рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЗрд╕рдореЗрдВ рдХрд┐рдирд╛рд░реЛрдВ рдкрд░ рдХрд╛рд▓реА рд░реЗрдЦрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдЕрд▓рдЧ рдкрд░рдд рд╣реИред рдФрд░ рдЗрди рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдХреЗрд╡рд▓ рд▓рд┐рдпрд╛ рдФрд░ рдмрдврд╝рд╛рдпрд╛ рдирд╣реАрдВ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ: рдкрд┐рдХреНрд╕рд▓ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХрд╛рд▓рд╛ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдпрд╛ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдкреЗрдВрдЯ рдирд╣реАрдВ рдХрд░рдирд╛ рд╣реИ, рдФрд░ рдЖрдк рдкрдбрд╝реЛрд╕реА рдкрд┐рдХреНрд╕рд▓ рдкрд░ рдирд╣реАрдВ рдЪрдврд╝ рд╕рдХрддреЗред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рд▓рд╛рдЗрдиреЗрдВ рдареЛрд╕ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреА рд╣реИрдВред рдпрд╣ рд╡рд╣ рдЬрдЧрд╣ рд╣реИ рдЬрд╣рд╛рдБ
computeNinePatchLines
рдлрд╝рдВрдХреНрд╢рди
computeNinePatchLines
рдореЗрдВ рдЖрддрд╛ рд╣реИред
function computeNinePatchLines() { var docName = getDocName(false); if (!isNinePatch(docName)) return null; var ninePatchLines = null; var doc = app.activeDocument; var areaCheckingFunctions = [ function(pos) {return areaIsEmpty(doc, pos, 0);}, function(pos) {return areaIsEmpty(doc, 0, pos);}, function(pos) {return areaIsEmpty(doc, pos, doc.height - 1);}, function(pos) {return areaIsEmpty(doc, doc.width - 1, pos);} ]; maxPositions = [doc.width, doc.height, doc.width, doc.height]; ninePatchLines = new Array(); for (var pos = 0; pos < areaCheckingFunctions.length; pos++) { ninePatchLines.push(findLines(maxPositions[pos], areaCheckingFunctions[pos])); } return ninePatchLines; }
рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдореБрдЦреНрдп рдмрд┐рдВрджреБ рддрд╕реНрд╡реАрд░ рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдкрдХреНрд╖ рдХреЗ рд╕рд╛рде рдЪрд▓рдирд╛ рд╣реИ рдФрд░ рдпрд╣ рдЬрд╛рдВрдЪрдирд╛ рд╣реИ рдХрд┐ рдХрд╛рд▓реА рд▓рд╛рдЗрдиреЗрдВ рд╡рд╣рд╛рдВ рдЫрд┐рдкреА рд╣реБрдИ рд╣реИрдВред рд╡реЗ рдкрд╛рдП рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХрд┐рд╕реА рднреА рдЪрд╛рд▓ рдХреЗ рдмрд┐рдирд╛ рд╡рд╛рдВрдЫрд┐рдд рдЧреБрдгрд╛рдВрдХ рджреНрд╡рд╛рд░рд╛ рдЙрдирдХреА рд▓рдВрдмрд╛рдИ рдЧреБрдгрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рд╡рд╛рдВрдЫрд┐рдд рдХреНрд╖реЗрддреНрд░ рдкрд░ рдкреЗрдВрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рджрд┐рд▓рдЪрд╕реНрдк рд╣реЛрдЧрд╛ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП
areaIsEmpty
рд╕рдорд╛рд░реЛрд╣:
function areaIsEmpty(doc, x, y) { var state = getState(); if (doc.colorSamplers.length == 0) { var colorSampler = doc.colorSamplers.add([x,y]); } else { var colorSampler = doc.colorSamplers[0]; colorSampler.move([x, y]); } var areaEmpty; try { areaEmpty = colorSampler.color.rgb.hexValue !== "000000"; } catch (e) { areaEmpty = true; } restoreState(state); return areaEmpty; }
рдпрд╣ рдлрд╝рдВрдХреНрд╢рди рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдХреЛрдИ рдкрд┐рдХреНрд╕реЗрд▓ рдмреНрд▓реИрдХ рдЖрдЙрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВред рдХреЗрд╡рд▓ рдпрд╣рд╛рдБ рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдлрд╝реЛрдЯреЛрд╢реЙрдк рдореЗрдВ, рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ рдирд┐рдХрд▓рд╛, рдорд╛рдирдХ рдПрдкреАрдЖрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдпрд╣ рдЬрд╛рдВрдЪрдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдкрд┐рдХреНрд╕реЗрд▓ рдЦрд╛рд▓реА рд╣реИ, рди рдХрд┐ рдХреЗрд╡рд▓ рдЗрд╕рдХреЗ рд░рдВрдЧ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдПред рдЗрд╕рд▓рд┐рдП, рдЖрдкрдХреЛ рдЙрд╕ рдкрд░ рдПрдХ рд░рдВрдЧ рдирдореВрдирд╛ рд▓рдЧрд╛рдирд╛ рд╣реЛрдЧрд╛ рдФрд░ рдпрд╣ рджреЗрдЦрдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рд░рдВрдЧ рдХреА рдЬрд╛рдБрдЪ рдХрд░рддреЗ рд╕рдордп рдпрд╣ рдЕрдкрд╡рд╛рдж рдлреЗрдВрдХрддрд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВред рдпрджрд┐ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдкрд┐рдХреНрд╕реЗрд▓ рдЦрд╛рд▓реА рд╣реИред рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рдЖрдк рдЗрд╕рдХрд╛ рд░рдВрдЧ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣
рдЯреНрд░рд┐рдХ рдирдВрдмрд░ рджреЛ рд╣реИ ред
findLines
рдлрд╝рдВрдХреНрд╢рди, рдЬреЛ рдореИрдВ рдпрд╣рд╛рдВ
areaIsEmpty
рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реВрдВ, рдмрд╕ рд╕реНрдХреНрд░реАрди рдХреА рдЪрд╛рд░ рд╕реАрдорд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЗ рд╕рд╛рде рд╕рднреА рдкрд┐рдХреНрд╕реЗрд▓ рдХреЗ рд▓рд┐рдП рдПрдХ рдкрдВрдХреНрддрд┐ рдореЗрдВ
areaIsEmpty
рд▓рд╛рдЧреВ
areaIsEmpty
рд╣реИ рдФрд░ рдЕрдкрдиреА рд╕реНрдерд┐рддрд┐ рд▓рд┐рдЦрддрд╛ рд╣реИред
рдлрд┐рд░ рдЖрдк рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рд╕реНрдХреЗрд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╕рд╣реЗрдЬ рд╕рдХрддреЗ рд╣реИрдВред
function saveInFolder(outputFolder, subFolder, scaling, postfix, ninePatchLines) { var opts = new ExportOptionsSaveForWeb(); opts.format = SaveDocumentType.PNG; opts.PNG8 = false; opts.transparency = true; opts.quality = 100; var state = getState(); if (ninePatchLines) { var doc = app.activeDocument; doc.resizeCanvas(doc.width - 2, doc.height - 2); resize(scaling, true); doc.resizeCanvas(doc.width + 2, doc.height + 2); drawLines(doc, scaling / 100, ninePatchLines); } else { resize(scaling, true); } activeDocument.exportDocument(createFile(outputFolder, subFolder, postfix, ".png", false), ExportType.SAVEFORWEB, opts); restoreState(state); }
рдпрд╣рд╛рдВ рд╕рдм рдХреБрдЫ, рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рд╕реНрдкрд╖реНрдЯ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣рд╛рдВ рдЪрд┐рддреНрд░ рдХреЛ рд╕реАрдзреЗ рдЖрдХрд╛рд░ рдореЗрдВ рдХреИрд╕реЗ рдмрджрд▓рдирд╛ рд╣реИ, рдПрдХ рдЕрд▓рдЧ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдХреЗ рд╣рдХрджрд╛рд░ рд╣реИрдВред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдлрд╝рдВрдХреНрд╢рди
Document.resizeImage
, рдФрд░ рдЖрдкрдХреЛ рдмрд╕ рдЗрд╕реЗ рдХреЙрд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рд╣реИ рдирд╛? рд▓реЗрдХрд┐рди рдЗрд╕рд╕реЗ рдХреБрдЫ рдирд╣реАрдВ рд╣реЛрдЧрд╛: рдкрд░рдд рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рдЫреЛрдЯрд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЖрдк рдПрдХ рдХреНрд░рд┐рдпрд╛ рд░рд┐рдХреЙрд░реНрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рдЗрд╕реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдореЗрдЯрд┐рдХ рд░реВрдк рд╕реЗ рдЦреЗрд▓ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рд╡рд┐рдХрд▓реНрдк рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдореЗрдВ рдмреБрд░рд╛ рдпрд╣ рд╣реИ рдХрд┐ рдлрд┐рд░ рдЖрдкрдХреЛ рдЗрди рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдПрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд╕рдВрд▓рдЧреНрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЬрд┐рд╕реЗ рдЖрдкрдХреЛ рд▓реЙрдиреНрдЪ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЖрдпрд╛рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЬреЛ рдХрд┐рд╕реА рддрд░рд╣ рдмрд╣реБрдд рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдирд╣реАрдВ рд╣реИред
рдПрдХ рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдк рдЙрд╕ рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИ рдЬреЛ
рдореЗрд░реЗ рдкрд╣рд▓реЗ рд╕реЗ рд╡рд░реНрдгрд┐рдд рдкреВрд░реНрд╡рд╡рд░реНрддреА рдХрд╛ рд╡рд░реНрдгрди рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдирд╛рдо рд╣реИ ScriptListener.8ред рдпрд╣ рдЯреВрд▓ рдЖрдкрдХреЛ рдЙрди рд╕рднреА рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рд▓рд┐рдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдЬреЛ рдлрд╝реЛрдЯреЛрд╢реЙрдк рдореЗрдВ рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдХреА рдЬрд╛рддреА рд╣реИрдВ, рднрд▓реЗ рд╣реА рдпреЗ рдХреНрд░рд┐рдпрд╛рдПрдВ рдорд╛рдирдХ рдПрдкреАрдЖрдИ рдореЗрдВ рд╕рдорд░реНрдерд┐рдд рди рд╣реЛрдВред рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рдХреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреНрд░реЙрд▓, рдмреЗрд╢рдХ, рд╕реНрд▓реЗрдЯреЗрдб рд╣реИ, рд▓реЗрдХрд┐рди рд╡реЗ рдЕрдкрдиреЗ рдХрд╛рд░реНрдп рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХрд░рддреЗ рд╣реИрдВред рдХреБрдЫ рдкреНрд░рдпрд╛рд╕ рд╕реЗ, рдЖрдк рд╕рдордЭ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреМрди рд╕реЗ рдкреИрд░рд╛рдореАрдЯрд░ рдХреНрдпрд╛ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИрдВ, рдФрд░ рд░рд┐рдХреЙрд░реНрдб рдХрд┐рдП рдЧрдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдмрдирд╛рддреЗ рд╣реИрдВред рдпрд╣ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдерд╛ рдХрд┐ рдпрд╣ рдЕрдХрд▓реНрдкрдиреАрдп, рд▓реЗрдХрд┐рди рдХрд╛рдо рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдХрд╛рд░реНрдп рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛:
function resize(size, relative) { var idImgS = charIDToTypeID( "ImgS" ); var desc = new ActionDescriptor(); var idWdth = charIDToTypeID( "Wdth" ); var idPxl = charIDToTypeID( relative ? "#Prc" : "#Pxl" ); desc.putUnitDouble( idWdth, idPxl, size ); var idscaleStyles = stringIDToTypeID( "scaleStyles" ); desc.putBoolean( idscaleStyles, true ); var idCnsP = charIDToTypeID( "CnsP" ); desc.putBoolean( idCnsP, true ); var idIntr = charIDToTypeID( "Intr" ); var idIntp = charIDToTypeID( "Intp" ); var idbicubicSharper = stringIDToTypeID( "bicubicAutomatic" ); desc.putEnumerated( idIntr, idIntp, idbicubicSharper ); executeAction( idImgS, desc, DialogModes.NO ); }
рдпрд╣
рдЪрд╛рд▓ рд╕рдВрдЦреНрдпрд╛ рддреАрди рдереА ред рд╡рд╛рдВрдЫрд┐рдд рдЫрд╡рд┐ рдЖрдХрд╛рд░ рдкреНрд░рд╛рдкреНрдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЖрд░реЗрдЦрд┐рдд рд╣реЛрддреА рд╣реИ, рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рддреЛ рдиреМ-рдкреИрдЪ рд▓рд╛рдЗрдиреЗрдВ, рдФрд░ рдирдП рдмрдиреЗ рд╕рдВрд╕рд╛рдзрди рдХреЛ рдЖрд╡рд╢реНрдпрдХ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рднреЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдПрдХреНрд╢рди рдмрд╛рд░ рдЖрдЗрдХрди рдмрдирд╛рдирд╛
MakeForAllDensities рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЪрд╛рд░ рдФрд░
MakeActionBarIcons рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИрдВ рдЬреЛ рдПрдХреНрд╢рди рдмрд╛рд░ рдХреЗ рд▓рд┐рдП рдЖрдЗрдХрди рдмрдирд╛рддреА рд╣реИрдВ: рдмреНрд▓реИрдХ рдПрдВрдб рд╡реНрд╣рд╛рдЗрдЯ рдереАрдо рдХреЗ рд▓рд┐рдП, рдбрд┐рд╕реНрдХрдиреЗрдХреНрдЯ рдФрд░ рдиреЙрди-рдбрд┐рд╕реНрдХрдиреЗрдХреНрдЯреЗрдбред рд╡реЗ MakeForAllDensities рдХреЗ рд╕рдорд╛рди рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рд╕рд┐рд╡рд╛рдп рдЗрд╕рдХреЗ рдХрд┐ рдЕрдм рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рдкрд░рдд рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рдЗрд╕ рдкрд░рдд рдореЗрдВ рдХреЗрд╡рд▓ рдЖрдЗрдХрди рдХреЗ рдЖрдХрд╛рд░ рдХрд╛ рдирд┐рд░реАрдХреНрд╖рдг рдХрд░рдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рдФрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рд╕реНрд╡рдпрдВ рд▓рд╛рдЧреВ рдХрд░реЗрдЧреАред
рдЕрдм рдХрдард┐рдирд╛рдИ рдпрд╣ рд╣реИ рдХрд┐ Google рдХреЛ
рдЕрдкрдиреЗ рд░рд╛рдЬреНрдп рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЖрдЗрдХрди рдХреЗ рд▓рд┐рдП рдХреБрдЫ
рд╢реИрд▓реА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдВ рд╣реИрдВ ред рдпрджрд┐ рдЖрдЗрдХрди рдХреЗрд╡рд▓ рдПрдХ рд░рд╛рдЬреНрдп рдореЗрдВ рдореМрдЬреВрдж рд╣реИ, рддреЛ рд╕рдм рдХреБрдЫ рд╕рд░рд▓ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЖрдкрдХреЛ рдЗрд╕реЗ рдмрдВрдж рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдкрд░рддреЛрдВ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдореЗрдЯрд┐рдХ рд░реВрдк рд╕реЗ рдХреИрд╕реЗ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПред рдПрдХреНрд╢рди рдмрд╛рд░ рдкрд░ рдЖрдЗрдХрди рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдпрд╣ рдЬрд╛рдирдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдкрд░рдд рдФрд░ рдЙрд╕рдХреЗ рд░рдВрдЧ рдХреА рдкрд╛рд░рджрд░реНрд╢рд┐рддрд╛ рдХреИрд╕реЗ рдмрджрд▓реЗрдВред рдкрд╣рд▓реЗ рдХреЗ рд╕рд╛рде рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдмрд╛рдж рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ, рдорд╛рдирдХ рдПрдкреАрдЖрдИ рдлрд┐рд░ рд╕реЗ рд╕реБрд╕реНрдд рджреЗрддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдлрд┐рд░ рд╕реЗ ScriptListener.8li рдХреЛ рд╕рд╣реЗрдЬрдирд╛ рд╣реЛрдЧрд╛ред рдЕрдкрдиреЗ рдЖрд╡реЗрджрди рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╕реНрдЯрд╛рдЗрд▓реНрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛ рд╣реИ рдЬреЛ рд╣рдореЗрдВ рд╡реЗрдХреНрдЯрд░ рд▓реЗрдпрд░ рдХреЗ рд░рдВрдЧ рдХреЛ рдмрджрд▓рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛:
setLayerColor
ред рд╡рд╣ рдЬрд┐рдмрд░рд┐рд╢, рдЬреЛ рдлрдВрдХреНрд╢рди рдХреА рдмреЙрдбреА рдореЗрдВ рд╣реИ, рдореИрдВ, рд╢рд╛рдпрдж, рдЫреЛрдбрд╝ рджреВрдВрдЧрд╛ред
рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рдЙрдкрд░реЛрдХреНрдд рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдПрдХреНрд╢рди рдмрд╛рд░ рдЖрдЗрдХрди рдХреЗ рд▓рд┐рдП рдХреБрдЫ рднреА рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИред рд▓реЗрдХрд┐рди рдЬреЛ рд▓реЛрдЧ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕реНрдЯрд╛рдЗрд▓реНрд╕ рдлрд╝рд╛рдЗрд▓ рдХреЛ рджреЗрдЦ рдЪреБрдХреЗ рд╣реИрдВ, рдЙрдиреНрд╣реЛрдВрдиреЗ рджреЗрдЦрд╛ рдХрд┐ ScriptListener.8li рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрдИ рдФрд░ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдкреНрд░рд╛рдкреНрдд рд╣реБрдП рд╣реИрдВ рдЬреЛ рд▓реЗрдпрд░ рдЗрдлреЗрдХреНрдЯреНрд╕ рдореЗрдВ рдлреЗрд░рдмрджрд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╡реЗ рдореЗрд░реЗ рдЕрдкрдиреЗ рдЖрдЗрдХрдиреЛрдВ рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦреЗ рдЧрдП рдереЗ, рдЬрд┐рдирдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рд▓рд┐рдкрд┐рдпреЛрдВ рдХреЛ рдЕрдм рдореИрдВ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдирд╣реАрдВ рдЬреЛрдбрд╝рддрд╛ред рдЗрд╕ рдХрд╛рд░рдг рд╕реЗ, рдореМрдЬреВрджрд╛ рдХрд╛рд░реНрдп, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдХрд┐рд╕реА рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдЖрдкрдХреЛ рдЕрдкрдирд╛ рдЦреБрдж рдХрд╛ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдлрд┐рд░ рд╕реЗ, рдЖрдк рдпрд╛ рддреЛ рдХреНрд░рд┐рдпрд╛рдПрдВ рд░рд┐рдХреЙрд░реНрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рд╕реНрдЯрд╛рдЗрд▓ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдкреНрд░реЛрдЧреНрд░рд╛рдореЗрдЯрд┐рдХ рд░реВрдк рд╕реЗ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдпрд╣ рдЕрд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреЗ рд╕рд╛рде рдлрд┐рд░ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╣рдордиреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА ScriptListener.8 рдХреЗ рд▓рд╛рдн рдореЗрдВ рдорд╣рд╛рд░рдд рд╣рд╛рд╕рд┐рд▓ рдХрд░ рд▓реА рд╣реИред рдФрд░ рдпрд╣рд╛рдВ рдПрдХ рдФрд░ рд░реЛрдбрд╝рд╛ рд╣реИ: рдпрджрд┐ рдЖрдк рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд░рдд рдкреНрд░рднрд╛рд╡ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рд░рдЦрддреЗ рд╣реИрдВ, рддреЛ рдЬрдм рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕реНрдерд╛рдкрд┐рдд рдкреНрд░рднрд╛рд╡ рдЧрд╛рдпрдм рд╣реЛ рдЬрд╛рдПрдВрдЧреЗред
рдЯреНрд░рд┐рдХ рдирдВрдмрд░ рдЪрд╛рд░ рдпрд╣рд╛рдБ рдХрд╛рдо рдЖрддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдЙрд╕ рдмрдХрд╡рд╛рд╕ рдХреА рд╢реБрд░реБрдЖрдд рдкрд░ рдзреНрдпрд╛рди рджреЗрддреЗ рд╣реИрдВ рдЬреЛ ScriptListener.8li рдкреНрд░рднрд╛рд╡ рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХреЗ рд▓рд┐рдП рджреЗрддрд╛ рд╣реИ, рддреЛ рд╣рд░ рдЬрдЧрд╣ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЗ рд╕рдорд╛рди рд░реЗрдЦрд╛рдПрдВ рд╣реЛрдВрдЧреА:
var idsetd = charIDToTypeID( "setd" ); var desc = new ActionDescriptor(); var idnull = charIDToTypeID( "null" ); var ref = new ActionReference(); var idPrpr = charIDToTypeID( "Prpr" ); var idLefx = charIDToTypeID( "Lefx" ); ref.putProperty( idPrpr, idLefx ); var idLyr = charIDToTypeID( "Lyr " ); var idOrdn = charIDToTypeID( "Ordn" ); var idTrgt = charIDToTypeID( "Trgt" ); ref.putEnumerated( idLyr, idOrdn, idTrgt ); desc.putReference( idnull, ref ); var idT = charIDToTypeID( "T " ); var desc2 = new ActionDescriptor(); var idScl = charIDToTypeID( "Scl " ); var idPrc = charIDToTypeID( "#Prc" ); desc2.putUnitDouble( idScl, idPrc, 100.000000 );
рдФрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдЕрдВрдд рдореЗрдВ, рд╕рдм рдХреБрдЫ рдЗрд╕ рдХреЙрд░реНрдб рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ:
var idLefx = charIDToTypeID( "Lefx" ); desc.putObject( idT, idLefx, desc2 ); executeAction( idsetd, desc, DialogModes.NO );
рдКрдкрд░ рдХреЗ рдХреЛрдб рдХреЗ рдкрд╣рд▓реЗ рднрд╛рдЧ рд╕реЗ рдЕрдВрддрд┐рдо рдЪрд╛рд░ рдкрдВрдХреНрддрд┐рдпрд╛рдБ, рдЬреЛ
desc2
рдФрд░ рд╢реИрд▓реА рдХреЗ рд▓рд┐рдП рдкреИрдорд╛рдирд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреА рд╣реИрдВ, рдкрд░рдд рд╢реИрд▓реА рдХреЛ рд╕реНрд╡рдпрдВ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд╝рд┐рдореНрдореЗрджрд╛рд░ рд╣реИрдВред рдмрд╛рдХреА рд╕рдм рд╕рд┐рд░реНрдл рд╢реИрд▓реА рдХрд╛ рдЙрдкрдпреЛрдЧ рд╣реИред рдЕрдм рдЬрдм рд╣рдо рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рд╡реЗ рдХреНрдпрд╛ рд▓рд╛рдЗрдиреЗрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рд╣рдо рдирд╕реЛрдВ рдХреЛ рдорд╛рдВрд╕ рд╕реЗ рдЕрд▓рдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХреЛрдб рдХреЗ рдмрд╣реБрдд рд╣рд┐рд╕реНрд╕реЗ рдХреЛ рдЕрд▓рдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рд╕реАрдзреЗ рдкреНрд░рднрд╛рд╡ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИред рдбреБрдкреНрд▓реАрдХреЗрдЯ рд╕реЗрдХреНрд╢рди рдХреЛ рд╕реНрдЯрд╛рдЗрд▓реНрд╕ рдореЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдлрдВрдХреНрд╢рдВрд╕ рдореЗрдВ рд╕реНрдЯрд╛рдЗрд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдПрдХ рд╕рдорд╛рди рддрд░реАрдХреЗ рд╕реЗ рд▓рд╛рдЧреВ рд╣реЛрддреЗ рд╣реИрдВ:
var style = newStyle();
рдЕрдм рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╕рднреА рдЙрдкрдХрд░рдг рд╣рд╛рде рдореЗрдВ рд╣реИрдВ, рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмрд╛рдХреА рд╣реИред рдореИрдВ рдЖрдкрдХреЛ рдпрд╛рдж рджрд┐рд▓рд╛рддрд╛ рд╣реВрдВ рдХрд┐ рдЗрди рд╕рднреА рдЪрдорддреНрдХрд╛рд░реА рд╕рд╛рдзрдиреЛрдВ рдХрд╛ рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рд░рд╛рдЬреНрдп рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╡рд┐рднрд┐рдиреНрди рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
makeIcons
рдореЗрдВ
makeIcons
рдлрд╝рдВрдХреНрд╢рди рдХреЗрд╡рд▓ рдпрд╣реА рдХрд░рддрд╛ рд╣реИ: рдпрд╣ рдПрдХреНрд╢рди рдмрд╛рд░ рдХреЗ рд▓рд┐рдП рдЖрдЗрдХрди рдкрд░ рд╡рд┐рднрд┐рдиреНрди рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдкрд░рд┐рдгрд╛рдо рдмрдЪрд╛рддрд╛ рд╣реИред рдореИрдВ рдпрд╣рд╛рдВ рдЙрд╕рдХрд╛ рдореБрдЦреНрдп рдЯреБрдХрдбрд╝рд╛ рд▓рд╛рддреА рд╣реВрдВред
if (makeStateful) { var selectorData = [ { state_enabled: false, postfix: "disabled" }, { postfix: "normal" } ]; makeSelectorXml(selectorData, outputFolder, "drawable"); } var styleFunctions = [function(style) {applyActionBarItemStyle(whiteTheme, false)}]; var postfixes = ["normal"]; if (makeStateful) { styleFunctions.unshift(function(style) {applyActionBarItemStyle(whiteTheme, true)}); postfixes.unshift("disabled"); } saveStyledDrawables(outputFolder, styleFunctions, postfixes);
рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдкрд╣рд▓рд╛ рднрд╛рдЧ рд╣рдорд╛рд░реЗ рд╕рдВрд╕рд╛рдзрди рдХреЗ рд▓рд┐рдП рдПрдХ рдЪрдпрдирдХрд░реНрддрд╛ рдмрдирд╛рддрд╛ рд╣реИред
Android рдореЗрдВ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдкреНрд░рдХрд╛рд╢рд┐рдд рд▓реЗрдЦ
рдмрдЯрди рдЧреЛрдкрдиреАрдпрддрд╛ рдореЗрдВ рдЪрдпрдирдХрд░реНрддрд╛рдУрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдХрд╛рд░реНрд░рд╡рд╛рдИ рдкрдЯреНрдЯреА рдХреЗ рд▓рд┐рдП рджреЛ рд░рд╛рдЬреНрдп рдмрдирд╛рдП рдЬрд╛рддреЗ рд╣реИрдВ: рдЬрдм рдмрдЯрди рдмрдВрдж рд╣реЛрддрд╛ рд╣реИ, рдФрд░ рдЬрдм рдпрд╣ рд╕рд╛рдорд╛рдиреНрдп рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реЛрддрд╛ рд╣реИред рддрджрдиреБрд╕рд╛рд░, рд░рд╛рдЬреНрдпреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рд╡рд╛рд▓реА рд╡рд╕реНрддреБрдУрдВ рдХреА рдПрдХ рд╕рд░рдгреА
makeSelectorXml
рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдкрд╛рд╕ рдХреА
makeSelectorXml
рд╣реИред рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдореЗрдВ
postfix
рдлрд╝реАрд▓реНрдб рд╣реЛрддрд╛ рд╣реИ рдФрд░, рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рддреЛ рдПрдХ рдпрд╛ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдлрд╝реАрд▓реНрдб "State_" рд╕реЗ рд╢реБрд░реВ рд╣реЛрддреЗ рд╣реИрдВред рдЙрд╕рдХреЗ рдмрд╛рдж,
makeSelectorXml
рдЗрд╕ рдЪрдорддреНрдХрд╛рд░ рд╕реЗ рдПрдХ XML рдЪрдпрдирдХрд░реНрддрд╛ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рддрд╛ рд╣реИ,
makeSelectorXml
рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рднреЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рджреВрд╕рд░рд╛ рднрд╛рдЧ рджреЛ рд╕рд░рдгрд┐рдпреЛрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рддрд╛ рд╣реИ: рдПрдХ рдореЗрдВ рдлрд╝рдВрдХреНрд╢рдВрд╕ рд╣реЛрддреЗ рд╣реИрдВ рдЬреЛ рджрд┐рдП рдЧрдП рд░рд╛рдЬреНрдп рдХреЗ рд▓рд┐рдП рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рджреВрд╕рд░реЗ рд╕рд░рдгреА рдореЗрдВ рд░рд╛рдЬреНрдпреЛрдВ рдХреЗ рдЕрдиреБрд░реВрдк рдкреЛрд╕реНрдЯрдлрд╝рд┐рдХреНрд╕ рд╣реЛрддреЗ рд╣реИрдВред рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рддреНрдпреЗрдХ рдХрд╛рд░реНрдп рдЕрдкрдиреЗ рдкреВрд░реНрдг рдирд┐рдкрдЯрд╛рди
style
рддрд░реНрдХ рдкрд░ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рд╡рд╣реА рд╡рд╕реНрддреБ рд╣реИ рдЬреЛ рдиреНрдпреВрд╕рдЯрд╛рдЗрд▓ рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рддреА рд╣реИ, рдЬрд┐рд╕реЗ рд╣рдордиреЗ рдмрд╣реБрдд рдкрд╣рд▓реЗ рдирд╣реАрдВ рд▓рдбрд╝рд╛ рдерд╛ред
applyStyle
рдЗрди рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ
applyStyle
рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ,
saveStyledDrawables
рдлрд╝рдВрдХреНрд╢рди
saveStyledDrawables
рдзреНрдпрд╛рди рд░рдЦреЗрдЧрд╛ред рдлрд╝рдВрдХреНрд╢рдВрд╕
makeSelectorXml
рдФрд░
saveStyledDrawables
рдирд╣реАрдВ рджрд┐рдП рдЬрд╛рдиреЗ рдЪрд╛рд╣рд┐рдП, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╕рдмрд╕реЗ рд╕рд╛рдзрд╛рд░рдг, рдЙрдмрд╛рдК рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИред
рдирд┐рд╖реНрдХрд░реНрд╖
рдЗрд╕ рддрд░рд╣, рдЖрдк рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдорд╛рдЙрд╕ рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рдирд╣реАрдВ рдЦреАрдВрдЪ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдПрдХ рддреИрдпрд╛рд░ рд╕рдорд╛рдзрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдФрд░ рдПрдХ рддрд╕реНрд╡реАрд░ рд╕реЗ рд╕рдм рдХреБрдЫ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдк рдмреЗрд╢рдХ рдПрдВрдбреНрд░реЙрдЗрдб рдПрд╕реЗрдЯ рд╕реНрдЯреВрдбрд┐рдпреЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдлрд╛рдпрджреЗ рд╣реИрдВред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЖрдк рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдмрдЯрдиреЛрдВ рдХреЗ рд▓рд┐рдП рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рд╢реИрд▓реА рдХреЗрд╡рд▓ рдПрдХ рд╡рд┐рджреЗрд╢реА рдЙрдкрдХрд░рдг рдореЗрдВ рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реИрдВ (рдХреНрдпреЛрдВ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдореИрдВрдиреЗ рдпрд╣ рдкреВрд░реА рдмрд╛рдд рд▓рд┐рдЦрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рд╣реИ)ред рджреВрд╕рд░реЗ, рдЕрднреА рднреА рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рд╛рдЗрдЯ рдкрд░ рдЕрдкрд▓реЛрдб рдХрд░рдирд╛, рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рд╕рд╛рде рд╕рдВрдпреЛрдЬрди рдХрд░рдирд╛, рдФрд░ рдлрд┐рд░ рдкреНрд░рд╛рдкреНрдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдлрд╝реЛрд▓реНрдбрд░реЛрдВ рдореЗрдВ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдирд╛ рдФрд░ рд╢реЛрд╡рд┐рдВрдЧ рдХрд░рдирд╛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдбрдмрд▓-рдХреНрд▓рд┐рдХ рдХрд░рдиреЗ рдЬрд┐рддрдирд╛ рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реИ рддрд╛рдХрд┐ рд╕рдм рдХреБрдЫ рдПрдХ рдмрд╛рд░ рдореЗрдВ рд╕рд╣реА рд╣реЛ рдЬрд╛рдПред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдПрдВрдбреНрд░реЙрдЗрдб рдПрд╕реЗрдЯ рд╕реНрдЯреВрдбрд┐рдпреЛ рд╕реАрдзреЗ PSD (рд▓реЗрдЦрди рдХреЗ рд╕рдордп рдХрдо рд╕реЗ рдХрдо) рдХреЗ рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ, рд╕рд╛рдорд╛рдиреНрдп рдЖрдЗрдХрди рд╕реЗ рдиреМ-рдкреИрдЪ рдХреЛ рдЕрд▓рдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЖрдк рдЗрд╕рдореЗрдВ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рд╕рдВрд╕рд╛рдзрд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рд▓реЗрдЦ рдЙрди рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рдерд╛ рдЬреЛ рдПрдВрдбреНрд░реЙрдЗрдб рдкрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдиреЗ рдореЗрдВ рд▓рдЧреЗ рд╣реБрдП рд╣реИрдВ, рдФрд░ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЬреЛ рдлрд╝реЛрдЯреЛрд╢реЙрдк рдХреЗ рд▓рд┐рдП рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред
рдЙрдкрдпреЛрдЧреА рд▓рд┐рдВрдХ