MaterialShapeDrawable рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд╕реНрдЯрдо рдЖрдХрд╛рд░ рдХреИрд╕реЗ рдмрдирд╛рдПрдВ

рдЫрд╡рд┐

рд╕рд╛рдордЧреНрд░реА рдбрд┐рдЬрд╛рдЗрди 2.0 рдиреЗ рдХрдИ рдирдИ рдЕрд╡рдзрд╛рд░рдгрд╛рдПрдВ рдкреЗрд╢ рдХреАрдВред рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рддрддреНрд╡реЛрдВ рдХреЗ рдЬреНрдпрд╛рдорд┐рддреАрдп рд░реВрдкреЛрдВ рдкрд░ рд╡рд┐рд╢реЗрд╖ рдзреНрдпрд╛рди рд╣реИред рдФрд░ рд╕реБрдВрджрд░ рдХрд╕реНрдЯрдо рдЖрдХрд╛рд░ рдмрдирд╛рдиреЗ рдХрд╛ рдПрдХ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рд╣реИред рдЗрд╕реЗ MaterialShapeDrawable рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рдпрд╣ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рддрдирд╛ рдЙрдкрдпреЛрдЧреА рдФрд░ рдЖрд╕рд╛рди рд╣реИред


рдПрдВрдбреНрд░реЙрдЗрдб рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рд╕реНрдХреНрд░реАрди рдкрд░ рдЧреНрд░рд╛рдлрд┐рдХ рддрддреНрд╡реЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдХрдИ рддрд░реАрдХреЗ рд╣реИрдВред рд╕рдмрд╕реЗ рд╕реАрдзрд╛ рд╡реЗрдмрдк рдпрд╛ рдкреАрдПрдирдЬреА рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдмрд┐рдЯрдореИрдк рдХреЛ рдЖрдпрд╛рдд рдХрд░рдирд╛ рд╣реИред рдПрдХ рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдк рд╡реЗрдХреНрдЯрд░рдбреНрд░рд╛рдЗрд╡ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИ, рдЬреЛ рдЖрдкрдХреЛ рдЫрд╡рд┐ рдХреЛ рдЙрд╕ рдЖрдХрд╛рд░ рддрдХ рдлреИрд▓рд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХреА рдЖрдкрдХреЛ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╕реНрдХреНрд░реАрди рдкрд░ рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдПрдХ рдФрд░ рддрд░реАрдХрд╛ рд╢реЗрдкрдбреНрд░рд╛рд╡реЗрдмрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИред рдЙрддреНрддрд░рд╛рд░реНрджреНрдз рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдкреГрд╖реНрдарднреВрдорд┐ рдЬреЛрдбрд╝рдиреЗ рдпрд╛ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдПрдХ рдЖрдЗрдХрди рдмрдирд╛рдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рд╣реИред ShapeDrawable рдХреЗ рд╕рд╛рде рдмрдирд╛рдИ рдЧрдИ рдЫрд╡рд┐рдпрд╛рдВ рд╕реНрдХреНрд░реАрди рдкрд░ рдкрд┐рдХреНрд╕реЗрд▓ рдШрдирддреНрд╡ рд╕реЗ рд╕реНрд╡рддрдВрддреНрд░ рд╣реЛрддреА рд╣реИрдВред рдЙрдиреНрд╣реЗрдВ рдПрдХреНрд╕рдПрдордПрд▓ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдПрдХ рдФрд░ рдЧреНрд░рд╛рдлрд┐рдХ рд╕рдВрд╕рд╛рдзрди рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕реНрдЯреЗрдЯрд▓рд┐рд╕реНрдЯрдбреНрд░рд╛рд╡реЗрдмрд▓) рдФрд░ рдПрдкреАрдЖрдИ рдПрд╕рдбреА 1 рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рдПрдВрдбреНрд░реЙрдЗрдб рдПрд╕рдбреАрдХреЗ рдореЗрдВ рдореМрдЬреВрдж рд╣реИрдВред


рдПрдХ рдЖрдХреГрддрд┐ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдХрдИ рд╢реЗрдкрдбреНрд░рд╛рд╡реЗрдмрд▓ рдЧреБрдг рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ: рдЖрдХреГрддрд┐ рдХрд╛ рдирд╛рдо, рднрд░рдг рд░рдВрдЧ (рдпрд╛ рдврд╛рд▓), рдФрд░ рдЖрдХреГрддрд┐ рдХрд╛ рд╕реАрдорд╛ рд░рдВрдЧред рдЖрдпрддреЛрдВ рдХреЗ рд▓рд┐рдП, рдЖрдк рдХреЛрдиреЛрдВ рдХреА рддреНрд░рд┐рдЬреНрдпрд╛ рднреА рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрди рдЧреБрдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЖрдк рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рд╕реНрдХреНрд░реАрди, рдбрд┐рд╡рд╛рдЗрдбрд░, рдмрдЯрди рдкреГрд╖реНрдарднреВрдорд┐ рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рдЙрджреНрджреЗрд╢реНрдп рдХреЗ рд▓рд┐рдП рд╡реНрдпрдХреНрддрд┐рдЧрдд рдЫрд╡рд┐рдпреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдпрджрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЙрдиреНрдирдпрди рдХреЗ рд╕рд╛рде рддрддреНрд╡реЛрдВ рдХреЗ рд▓рд┐рдП рдкреГрд╖реНрдарднреВрдорд┐ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдкреАрдЖрдИ v.21 + рдФрд░ рд╢реЗрдкрдбреНрд░реИрдмрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдЗрди рддрддреНрд╡реЛрдВ рдХреЗ рддрд╣рдд рдЫрд╛рдпрд╛ рднреА рд╕рд╣реА рд░реВрдк рдореЗрдВ рд╣реЛрдЧреА:


рдЫрд╡рд┐


рд╢реЗрдкрдбреНрд░рд╛рд╡реЗрдмрд▓ рдПрдХ рдЖрд╕рд╛рди рдЙрдкрдХрд░рдг рд╣реИ рдЬреЛ рд▓рдЧрднрдЧ рд╣рдореЗрд╢рд╛ рдЕрдкрдирд╛ рдХрд╛рдо рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдордЯреАрд░рд┐рдпрд▓ рдбрд┐рдЬрд╝рд╛рдЗрди 2.0 рдХреЗ рдЖрдЧрдорди рдХреЗ рд╕рд╛рде, рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдХреБрдЫ рдЕрдзрд┐рдХ рд▓рдЪреАрд▓реЗ рд╣реЛрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдирдИ рдбрд┐рдЬрд╛рдЗрди рдкреНрд░рдгрд╛рд▓реА рдЙрдирдХреЗ рдЕрд░реНрде, рд╕реНрдерд┐рддрд┐ рдФрд░ рдЖрд╡реЗрджрди рдХреА рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╢реИрд▓реА рдкрд░ рдЬреЛрд░ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рднрд┐рдиреНрди рд░реВрдкреЛрдВ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЛ рдкреНрд░реЛрддреНрд╕рд╛рд╣рд┐рдд рдХрд░рддреА рд╣реИред рдореИрдВрдиреЗ рдКрдкрд░ рд▓рд┐рдЦрд╛ рд╣реИ рдХрд┐ рд╡рд╛рдВрдЫрд┐рдд рдХрд░рдиреЗ рдХреЗ рдХрдИ рддрд░реАрдХреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЙрдирдореЗрдВ рд╕реЗ рд╕рдмрд╕реЗ рд╕рд░рд▓ рдЕрдм рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рдирд╣реАрдВ рд╣реИред рдХреНрдпрд╛ рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рд╡реЗрдХреНрдЯрд░ рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдФрд░ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдКрдВрдЪрд╛рдИ рдХреЗ рд╕рд╛рде рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рддрддреНрд╡реЛрдВ рдХреЗ рд▓рд┐рдП "рдореБрдХреНрдд" рдЫрд╛рдпрд╛ рдмрдирд╛рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдЦреЛ рджреЗрддреЗ рд╣реИрдВ? рдпрд╛ рдХреНрдпрд╛ рдпрд╣ рд░реЗрдЦрд╛рдкреБрдВрдЬ рдЫрд╡рд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд╛рдкрд╕ рд░реЛрд▓ рдХрд░рдиреЗ рдФрд░ рд╕реНрдХреНрд░реАрди рдкрд░ рдЫрд╣ рд╕рдВрднрд╡ рдкрд┐рдХреНрд╕реЗрд▓ рдШрдирддреНрд╡ рдХреЗ рд▓рд┐рдП рдЧреНрд░рд╛рдлрд┐рдХ рд╕рдВрд╕рд╛рдзрди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд╛рдпрдХ рд╣реИ? рд╕реМрднрд╛рдЧреНрдп рд╕реЗ, рд╕рд╛рдордЧреНрд░реА рдбрд┐рдЬрд╛рдЗрди 2.0 рдХреЗ рдЖрдЧрдорди рдХреЗ рд╕рд╛рде, рдПрдХ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдирдпрд╛ рдШрдЯрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛ рд╣реИред


рдпрд╣ рд▓рд╛рдЗрдмреНрд░реЗрд░реА Android рдФрд░ рдЕрдиреНрдп рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдореЛрдВ рдХреЗ рд╕рднреА рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдкрд░ рд╕рд╛рдордЧреНрд░реА рдбрд┐рдЬрд╝рд╛рдЗрди UI рдХреЗ рд╕реНрд╡рд░реВрдк рдФрд░ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдПрдХрдЬреБрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдирд╛рдИ рдЧрдИ рдереА (iOS, рд╡реЗрдм рдФрд░ рдлрд╝реНрд▓рдЯрд░ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рд╣реИрдВ)ред рдШрдЯрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдирдИ рд╕рд╛рдордЧреНрд░реА рдбрд┐рдЬрд╛рдЗрди рдХреЗ рд▓рд┐рдП рдХрдИ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЗрд╕рдореЗрдВ рдЕрдкреЗрдХреНрд╖рд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рд╕рд╛рде рдмреЙрдЯрдордРрдкрдмрд╛рд░ рдШрдЯрдХ рд╢рд╛рдорд┐рд▓ рд╣реИред рдЕрдиреНрдп рдШрдЯрдХреЛрдВ рдФрд░ рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ рдХреЗ рдмреАрдЪ, MaterialShapeDrawable рд╡рд░реНрдЧ рд╣реИред рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдпрд╣ рдЙрди рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрд╡рд╢реНрдпрдХ рдЙрдкрдХрд░рдг рд╣реИ рдЬреЛ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдирдИ рдбрд┐рдЬрд╛рдЗрди рдкреНрд░рдгрд╛рд▓реА рдмрдирд╛рддреЗ рд╣реИрдВред


рд╣рд╛рд▓рд╛рдВрдХрд┐ MaterialShapeDrawable рдХреЛ рдЕрднреА рднреА 1.0.0 рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд░рд┐рд▓реАрдЬрд╝ рдореЗрдВ рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рд╢рд╛рдВрдд рдкреНрд░рднрд╛рд╡ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред MaterialShapeDrawable рд╡рд░реНрдЧ рдореЗрдВ, рдЖрдк рдЗрд╕рдХреЗ рдкрдХреНрд╖реЛрдВ рдФрд░ рдЗрд╕рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдХреЛрдг рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдХреЗ рдПрдХ рдЖрдХреГрддрд┐ рдХрд╛ рд╡рд░реНрдгрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧреБрдгреЛрдВ рдХреЛ рдПрдХ рдЗрдВрдЯрд░рдкреЛрд▓рд░ рджреНрд╡рд╛рд░рд╛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬреЛ рдЙрдиреНрд╣реЗрдВ рдЪреЗрддрди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред


рдЕрдкрдирд╛ рд╕реНрд╡рдпрдВ рдХрд╛ MaterialShapeDrawable рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдЙрд╕ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдорд╛рдкрджрдВрдбреЛрдВ рдореЗрдВ TypePathModel рдкреНрд░рдХрд╛рд░ рдХреА рдПрдХ рд╡рд╕реНрддреБ рдкрд╛рд╕ рдХрд░рдиреА рд╣реЛрдЧреАред рдпрд╣ рдХреНрд░рдорд╢рдГ рдПрдЬрдЯреНрд░реАрдЯрдореЗрдВрдЯ рдФрд░ рдХреЙрд░реНрдирд░рдЯреНрд░реАрдЯрдореЗрдВрдЯ рдХрдХреНрд╖рд╛рдУрдВ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдкрдХреНрд╖ рдФрд░ рдЖрдХреГрддрд┐ рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдХреЛрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИ (рд╣рдореЗрд╢рд╛ рдЪрд╛рд░ рдкрдХреНрд╖ рдФрд░ рдХреЛрдг рд╣реЛрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдЙрдирдХреА рдорджрдж рд╕реЗ рд▓рдЧрднрдЧ рдХрд┐рд╕реА рднреА рдЖрдВрдХрдбрд╝реЗ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдореЗрдВ рд╣рд╕реНрддрдХреНрд╖реЗрдк рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ)ред рдЖрдк рдкреНрд░рддреНрдпреЗрдХ рдкрдХреНрд╖ рдФрд░ рдХреЛрдиреЗ рдХреЗ рд▓рд┐рдП рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рд╡рд┐рд╡рд░рдг рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рдПрдХ рд╡рд┐рдзрд┐ рдХреЛ рдХреЙрд▓ рдХрд░рдХреЗ рдкреВрд░реЗ рдЖрдВрдХрдбрд╝реЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдмрд╛рд░ рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред


рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкрдХреНрд╖реЛрдВ рдФрд░ рдХреЛрдгреЛрдВ рдХреЗ рдЙрдкрдЪрд╛рд░ рдХреЗ рдХрдИ рддреИрдпрд╛рд░-рд╕реЗ-рдЙрдкрдпреЛрдЧ рд╡рд░реНрдгрди рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рд╕рд╛рдордЧреНрд░реА рдбрд┐рдЬрд╛рдЗрди 2.0 рдореЗрдВ рд╢реБрд░реВ рдХрд┐рдП рдЧрдП рдШрдЯрдХреЛрдВ рдХреЗ рдЖрдХрд╛рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХрд╛рдВрд╢ рдирд╡рд╛рдЪрд╛рд░ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдореМрдЬреВрдж рд╣реИ: RoundedCornerTreatment - рдЧреЛрд▓ рдХреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП, CutCornerTreatment - рдХрдЯреЗ рд╣реБрдП рдХреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП, TriangleEdgeTreatment - рд╕рд╛рдЗрдб рдореЗрдВ рдПрдХ рддреНрд░рд┐рдХреЛрдг рдХрд╛рдЯрдиреЗ рдпрд╛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдПред рдЙрдирдХреЗ рдХрд╛рдо рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг рд╣реИ:


val shapePathModel = ShapePathModel().apply { setAllCorners(CutCornerTreatment(dip(5).toFloat())) setAllEdges(TriangleEdgeTreatment(dip(5).toFloat(), true)) } val backgroundDrawable = MaterialShapeDrawable(shapePathModel).apply { setTint(ContextCompat.getColor(this@MainActivity, R.color.colorPrimary)) paintStyle = Paint.Style.FILL } textView.background = backgroundDrawable 

рдпрд╣ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦреЗрдЧрд╛:


рдЫрд╡рд┐


рдмреЗрд╢рдХ, рдЖрдк рдмрд╕ рдЪреЗрд╣рд░реЗ рдФрд░ рдХреЛрдгреЛрдВ рдХрд╛ рдЕрдкрдирд╛ рд╡рд┐рд╡рд░рдг рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдХрд╛рд░ рд╣рдореЗрд╢рд╛ рдКрдкрд░реА рдмрд╛рдПрдБ рддрддреНрд╡ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдбреНрд░рд╛рдПрдмрд▓ рддреИрдпрд╛рд░ рдЖрдХреГрддрд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд░реЛрдЯреЗрд╢рди / рдкреНрд░рддрд┐рдмрд┐рдВрдм рд╕рдВрдЪрд╛рд▓рди рдХрд░реЗрдЧрд╛ред рдЗрд╕реЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рдЙрджрд╛рд╣рд░рдг рд╣реИ:


 class CutoutCornersTreatment(val size: Float) : CornerTreatment() { override fun getCornerPath(angle: Float, interpolation: Float, shapePath: ShapePath) { shapePath.reset(0.0f, size * interpolation) shapePath.lineTo(size * interpolation, size * interpolation) shapePath.lineTo(size * interpolation, 0f) } } class CurvedEdgeTreatment(val size: Float) : EdgeTreatment() { override fun getEdgePath(length: Float, interpolation: Float, shapePath: ShapePath) { shapePath.quadToPoint(length / 2f, size * interpolation, length, 0f) } } 

рдпрджрд┐ рдЗрд╕ MaterialShapeDrawable рдХреЛ рдкреГрд╖реНрдарднреВрдорд┐ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдкрд░рд┐рдгрд╛рдо рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реЛрдЧрд╛:


рдЫрд╡рд┐


рдирдИ рд╕рд╛рдордЧреНрд░реА рдШрдЯрдХ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рдмреЙрдЯрдордмрд╛рд░ рдкреИрдХреЗрдЬ рдореЗрдВ рдПрдХ рдмреЙрдЯрдордРрдкрдмрд╛рд░рдЯреЙрдкрдПрдбрдЬрдЯреНрд░реАрдЯрдореЗрдВрдЯ рд╣реИред рдпрд╣ рдлрд╝реНрд▓реЛрдЯрд┐рдВрдЧрдПрд╢рдирдмрдЯрди рдмрдЯрди рдХреЗ рд▓рд┐рдП рдирд┐рдЪрд▓рд╛ рдПрдкрдмрд╛рд░ рдореЗрдВ рдХрдЯрдЖрдЙрдЯ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИред рдмрдЯрди рдХреА рд╕реНрдерд┐рддрд┐ рдФрд░ рдЖрдХрд╛рд░ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЗрд╕рдХрд╛ рдКрдкрд░реА рднрд╛рдЧ рдПрдирд┐рдореЗрдЯреЗрдб рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдореИрдВ рдЖрдкрдХреЛ рдЕрдкрдиреА рдЦреБрдж рдХреА рдЖрдБрдЦреЛрдВ рд╕реЗ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЗрди рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рдХреЛрдб рдХреЛ рдкрдврд╝рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ MaterialShapeDrawable рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╣реА рд▓рдЪреАрд▓рд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рд╕рд╛рде рд▓рдЧрднрдЧ рд╕рдм рдХреБрдЫ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред


рдпрджрд┐ рд╣рдо рд╕рд╛рдорд╛рдиреНрдп рдЖрдХрд╛рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдПрдХ рдФрд░ рд╡рд┐рд╡рд░рдг рд╣реИ рдЬреЛ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ - рд╕рдореЛрдЪреНрдЪ рдХреЗ рдЕрдиреБрд░реВрдк рдЖрдХреГрддрд┐ рдХреА рдПрдХ рдЫрд╛рдпрд╛ рдбрд╛рд▓рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ред рдЪреВрдВрдХрд┐ рдЕрдм рдЖрдк MaterialShapeDrawable рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрд╣реБрдд рд╣реА рдЕрд╕рд╛рдорд╛рдиреНрдп рдЖрдХреГрддрд┐рдпреЛрдВ рдХреА рд░реВрдкрд░реЗрдЦрд╛ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдЫрд╛рдпрд╛ рдХреЗ рдЖрдХрд╛рд░ рдХреЛ рдЫрд╡рд┐ рдХреЗ рдЖрдХрд╛рд░ рдореЗрдВ рдирд╣реАрдВ рд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдирд┐рд░рд╛рд╢рд╛ рд╣реЛрдЧреА, рдЦрд╛рд╕рдХрд░ рдЬрдм рдпреЗ рдЫрд╛рдпрд╛рдПрдВ рдореИрдЯреЗрд░рд┐рдпрд▓ рдбрд┐рдЬрд╝рд╛рдЗрди 2.0 рдореЗрдВ рд╣рд░ рдЬрдЧрд╣ рджреЗрдЦреА рдЬрд╛ рд╕рдХрддреА рд╣реИрдВред MaterialShapeDrawable рднреА рдЫрд╛рдпрд╛ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреА рдЧрдгрдирд╛ рдХрд░рддрд╛ рд╣реИред рд╢реИрдбреЛрдиреЗрдмрд▓ рдкреНрд░реЙрдкрд░реНрдЯреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рдЖрдк рд╢реИрдбреЛ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рдХрд┐ рдлрд┐рдЧрд░ рдХреЗ рд╕рдореЛрдЪреНрдЪ рдХрд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкрд╛рд▓рди рдХрд░реЗрдЧрд╛, рдЫрд╛рдпрд╛ рдХреА рддреНрд░рд┐рдЬреНрдпрд╛, рдКрдВрдЪрд╛рдИ рдФрд░ рд░рдВрдЧ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ рднреА рд╕рдВрднрд╡ рд╣реИред рд╕рдЪ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд▓рдЧрддрд╛ рд╣реИ? рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рд╣рд╛рдБред рдпрджрд┐ рдЖрдк MaterialShapeDrawable рдХреА рдЫрд╛рдпрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдЫрд╛рдпрд╛ рдорд┐рд▓рддреА рд╣реИ (рдкреЗрдВрдЯ рд╡рд░реНрдЧ рдХреЗ рд╕реЗрдЯрд╢реЗрдбреЛ рд▓реЗрдпрд░ () рд╡рд┐рдзрд┐ рджреНрд╡рд╛рд░рд╛, рдЬреЛ рдкрд╛рда рдкрд░ рдЫрд╛рдпрд╛ рдЦреАрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдмрдирд╛рдИ рдЧрдИ рдереА), рд▓реЗрдХрд┐рди UI рдШрдЯрдХ рдХреА рд╕реАрдорд╛рдУрдВ рдореЗрдВ рдлрд╕рд▓реА рд╣реЛрддреА рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдкрд░рд┐рдгрд╛рдо рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрддрд╛ рд╣реИ:


рдЫрд╡рд┐


рдзреНрдпрд╛рди рд░рдЦреЗрдВ рдХрд┐ MaterialShapeDrawable рдХреЛ рдЕрднреА рднреА рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреИрд╕реЗ рдХрд┐ рдПрдкреАрдЖрдИ, рдФрд░ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдмрджрд▓ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рднреА рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рдирдИ рд╕рд╛рдордЧреНрд░реА рдШрдЯрдХ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд▓рд┐рдП рдХреЛрдб рдЦреБрд▓рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдмрдЧ рдЯреНрд░реИрдХрд░ рдореЗрдВ рдЯрд┐рдХрдЯ рдмрдирд╛рдирд╛ рдпрд╛ рдЬреНрдЮрд╛рдд рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рднреА рдЦреАрдВрдЪрдирд╛ рдмрд╣реБрдд рд╕реНрд╡рд╛рдЧрдд рдпреЛрдЧреНрдп рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЬрдм рдЖрдк рдЗрди рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдкрдврд╝рддреЗ рд╣реИрдВ, рддреЛ рдПрдкреАрдЖрдИ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреА рдорд╛рд╕реНрдЯрд░ рд╢рд╛рдЦрд╛ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдереЛрдбрд╝рд╛ рдЕрд▓рдЧ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╢реЗрдкрдПрдкреИрд░реЗрдВрд╕рдореЙрдбрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╢реЗрдкрдкреИрдереЛрдбреЗрд▓ рдХреЗ рдмрдЬрд╛рдп рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛), рдЬреЛ рд╕рдХреНрд░рд┐рдп рдХрд╛рд░реНрдп рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИред рдЕрдЧрд▓реА рд░рд┐рд▓реАрдЬ рдореЗрдВ рд╣реЛрдирд╣рд╛рд░ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╕рдВрдкреВрд░реНрдг рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдереАрдо рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкрдХреНрд╖реЛрдВ / рдХреЛрдгреЛрдВ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред рдЖрдк рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдкреНрд░рд▓реЗрдЦрди рдпрд╛ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╕реНрд░реЛрддреЛрдВ рд╕реЗ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рди рд╕рдХрддреЗ рд╣реИрдВред


рдЕрдиреБрд╡рд╛рджрдХ рд╕реЗ:
рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реИ рдХрд┐ рдРрд╕реЗ рдЙрдкрдХрд░рдг рд╣реИрдВ рдЬреЛ рд╕рд╛рдорд╛рдиреНрдп рдЖрдХрд╛рд░ рдореЗрдВ рдирдИ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ рдФрд░ рд╕рд░рд▓рддрдо рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рдирд╣реАрдВ рдмрдирд╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддреЗ рд╣реИрдВред рдпрд╣ рдбреЗрд╡рд▓рдкрд░ рдХреЛ рд╣рд░ рдЫреЛрдЯреА рдЪреАрдЬ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╛рдЗрдирд░ рдХреЛ рдЦреАрдВрдЪрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдФрд░ рдХрд╛рдлреА рдХрдо рд╕рдордп рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рд╣рдо рдореМрдЬреВрджрд╛ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирдП рддрд░реАрдХреЛрдВ рдХрд╛ рдЕрднреНрдпрд╛рд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╛рдордЧреНрд░реА рдШрдЯрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рдЕрдЧрд▓реЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

Source: https://habr.com/ru/post/hi426997/


All Articles