рд▓рд╛рд░реНрд╕ рд╡реЛрдЧреЗрд▓ рдЧреНрд░рд╣рдг рдХреЗ рдПрдХ рдкреНрд░рдЪрд╛рд░рдХ рд╣реИрдВред
рдмрд┐рд▓реНрд▓реА рдХреЗ рдиреАрдЪреЗ, рдЖрдкрдХреЛ рдЙрд╕рдХреЗ рд▓реЗрдЦ рдХреЗ рдЕрдиреБрд╡рд╛рдж рдХреА рдирд┐рд░рдВрддрд░рддрд╛ рдорд┐рд▓реЗрдЧреА, рдЬрд┐рд╕рдореЗрдВ рдПрдХреНрд▓рд┐рдкреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдВрдбреНрд░реЙрдЗрдб рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рд╡рд░реНрдгрди рд╣реИред рдпрд╣ рдЧреНрд░рд╣рдг 3.6, рдЬрд╛рд╡рд╛ 1.6 рдФрд░ рдПрдВрдбреНрд░реЙрдЗрдб 2.3 (рдЬрд┐рдВрдЬрд░рдмреНрд░реЗрдб) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред
рднрд╛рдЧ 11.7ред рдЧрддрд┐рд╡рд┐рдзрд┐ рдФрд░ рдЬреАрд╡рди рдЪрдХреНрд░
рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдЖрдкрдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдЬреАрд╡рди рдЪрдХреНрд░ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реИред рдПрдВрдбреНрд░реЙрдЗрдб рдХрд┐рд╕реА рднреА рд╕рдордп рдЖрдкрдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд░реЛрдХ рдпрд╛ рдирд╖реНрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдЗрдирдХрдорд┐рдВрдЧ рдХреЙрд▓ рдХреЗ рдХрд╛рд░рдгред Android рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рддрд░реАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЧрддрд┐рд╡рд┐рдзрд┐ рдЬреАрд╡рдирдЪрдХреНрд░ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рддрд░реАрдХреЗ рд╣реИрдВ:
- onSaveInstanceState () - рдпрджрд┐ рдЧрддрд┐рд╡рд┐рдзрд┐ рдмрдВрдж рд╣реЛ рдЬрд╛рддреА рд╣реИ рддреЛ рдХреЙрд▓ рдХрд░реЗрдВред рдЧрддрд┐рд╡рд┐рдзрд┐ рд╕реНрдерд┐рддрд┐ рдХреЛ рдмрд╣рд╛рд▓ рдХрд░рддреЗ рд╕рдордп рдбреЗрдЯрд╛ рдХреЛ рдмрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдпрджрд┐ рдЧрддрд┐рд╡рд┐рдзрд┐ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рд╣реЛ рдЬрд╛рддреА рд╣реИред
- onPause () - рд╣рдореЗрд╢рд╛ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ рдпрджрд┐ рдЧрддрд┐рд╡рд┐рдзрд┐ рдкреВрд░реА рд╣реЛ рдЧрдИ рд╣реИ, рддреЛ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рдореБрдХреНрдд рдХрд░рдиреЗ рдпрд╛ рдбреЗрдЯрд╛ рдХреЛ рдмрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
- onResume () - рдЕрдЧрд░ рдЧрддрд┐рд╡рд┐рдзрд┐ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдХреА рдЬрд╛рддреА рд╣реИ, рддреЛ рдЦреЗрддреЛрдВ рдХреЛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
1.8ред рдкреНрд░рд╕рдВрдЧ
Android.content.Context рд╡рд░реНрдЧ Android рд╕рд┐рд╕реНрдЯрдо рд╕реЗ рдХрдиреЗрдХреНрд╢рди рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╡рд╛рддрд╛рд╡рд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡реИрд╢реНрд╡рд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд╣реИред рд╕рдВрджрд░реНрдн getSystemService рд╡рд┐рдзрд┐ рднреА рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдЖрдкрдХреЛ рдЙрдкрдХрд░рдг рдХреЗ рд╡рд┐рднрд┐рдиреНрди рдЯреБрдХрдбрд╝реЛрдВ рдХреЗ рд▓рд┐рдП рдирд┐рдпрдВрддреНрд░рдг рдСрдмреНрдЬреЗрдХреНрдЯ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдЪреВрдВрдХрд┐ рдЧрддрд┐рд╡рд┐рдзрд┐рдпрд╛рдБ рдФрд░ рд╕реЗрд╡рд╛рдПрдБ рдкреНрд░рд╕рдВрдЧ рд╡рд░реНрдЧ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рддреА рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЖрдк рдЗрд╕рдХреЗ рд╕рд╛рде рд╕реАрдзреЗ рд╕рдВрджрд░реНрдн рддрдХ рдкрд╣реБрдБрдЪ рд╕рдХрддреЗ рд╣реИрдВред
2. рд╕реНрдерд╛рдкрдирд╛
рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рдЖрдкрдиреЗ рдкрд╣рд▓реЗ рд╣реА рдЧреНрд░рд╣рдг рд▓рдЧрд╛ рджрд┐рдпрд╛ рд╣реИред
2.1ред Android рдПрд╕рдбреАрдХреЗ
рдПрдВрдбреНрд░реЙрдЗрдб рдПрд╕рдбреАрдХреЗ рд▓рд┐рдВрдХ рдкрд░ рдПрдВрдбреНрд░реЙрдЗрдб рдкреЗрдЬ рд╕реЗ
рдПрдВрдбреНрд░реЙрдЗрдб рдПрд╕рдбреАрдХреЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВред
рдЖрдк рдЕрдкрдиреЗ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдХрд┐рд╕реА рднреА рд╕реНрдерд╛рди рдкрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдП рдЧрдП рдЬрд╝рд┐рдк рд╕рдВрдЧреНрд░рд╣ рдХреЛ рдЕрдирдкреИрдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд▓реЗрдЦрдХ рдиреЗ рдЗрд╕реЗ "c: \ android-sdk-windows" рдореЗрдВ рдЕрдирдкреИрдХ рдХрд┐рдпрд╛ред
2.2ред рдЧреНрд░рд╣рдг
рдПрдВрдбреНрд░реЙрдЗрдб рдбреЗрд╡рд▓рдкрдореЗрдВрдЯ рдЯреВрд▓реНрд╕ (ADT) рдХреЗ рд▓рд┐рдП рд╕рднреА рдЙрдкрд▓рдмреНрдз рдкреНрд▓рдЧ рдЗрди рдХреЛ
dl-ssl.google.com/android/eclipse рдкрд░ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХреНрд▓рд┐рдкреНрд╕ рдЕрдкрдбреЗрдЯ рдореИрдиреЗрдЬрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
2.3ред рд╡рд┐рдиреНрдпрд╛рд╕
рдЧреНрд░рд╣рдг рдореЗрдВ, рд╡рд┐рдВрдбреЛрдЬ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рд╛рдердорд┐рдХрддрд╛рдПрдВ рд╕рдВрд╡рд╛рдж рдЦреЛрд▓реЗрдВ -> рдкреНрд░рд╛рдердорд┐рдХрддрд╛рдПрдВред Android рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ рдФрд░ Android SDK рдХреА рд╕реНрдерд╛рдкрдирд╛ рдкрде рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВред
рдпрджрд┐ рдЖрдк рд╣рд░ рдмрд╛рд░ рдпрд╛ рдмрд╕ рдЕрдХреНрд╕рд░ рдПрдВрдбреНрд░реЙрдЗрдб рдкреНрд▓рдЧрдЗрди рдХреЗ рд╕реНрдерд╛рди рдХреЛ рдлрд┐рд░ рд╕реЗ рдЪреБрдирдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рддреЗ рд╣реИрдВ, рддреЛ рдмрдЧ 3210 рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рд▓реЗрдЦрдХ рд╕реЗ рдЬреБрдбрд╝реЗрдВрдЕрдм рдореЗрдиреВ рд╕реЗ Window -> Android SDK рдФрд░ AVD рдореИрдиреЗрдЬрд░ рдЪреБрдиреЗрдВред

рдЙрдкрд▓рдмреНрдз рдкреИрдХреЗрдЬреЛрдВ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ рдФрд░ рдПрд╕рдбреАрдХреЗ рдХреЗ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЪрдпрди рдХрд░реЗрдВред

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



AVD рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред рдпрд╣ рдПрдХ рдбрд┐рд╡рд╛рдЗрд╕ рдмрдирд╛рдПрдЧрд╛ред рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╕рд╣реА рд╣реИрдВ, рдЗрд╕рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЕрдкрдиреЗ рдбрд┐рд╡рд╛рдЗрд╕ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ рдФрд░ "рдкреНрд░рд╛рд░рдВрдн" рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред

(рд▓рдВрдмреЗ рд╕рдордп рдХреЗ рдмрд╛рдж) рдЖрдкрдХрд╛ рдбрд┐рд╡рд╛рдЗрд╕ рд╢реБрд░реВ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред

2.5ред Android рд╕реНрд░реЛрдд рдХреЛрдб
рдЕрдЧрд▓рд╛ рдЪрд░рдг рд╡реИрдХрд▓реНрдкрд┐рдХ рд╣реИред
рдПрдВрдбреНрд░реЙрдЗрдб рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддреЗ рд╕рдордп, рдПрдВрдбреНрд░реЙрдЗрдб рд╕реНрд░реЛрдд рдХреЛрдб рдХреЛ рд╣рд╛рде рдореЗрдВ рдХрдИ рдЪреВрдХ рдХреЗ рд╕рд╛рде рдЙрдкрд▓рдмреНрдз рд╣реЛрдирд╛ рдЙрдкрдпреЛрдЧреА рд╣реЛрддрд╛ рд╣реИред
рд╣рд╛рд░рд┐рд╕ рдкреЗрдХреЛ рдЙрди рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдПрдВрдбреНрд░реЙрдЗрдб рд╕реНрд░реЛрдд рддрдХ рдкрд╣реБрдВрдЪ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред рджреЛ рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЧреНрд░рд╣рдг рдЕрдкрдбреЗрдЯ рдкреНрд░рдмрдВрдзрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдЕрдкрдбреЗрдЯ рд╕рд╛рдЗрдЯреЗрдВ: "
adt-addons.googlecode.com/svn/trunk/source/com.android.ide.eclipse.source.update " рдФрд░ "
adt-addons.googlecode.com/svn/bunk/binedit/com.android .ide.eclipse.binedit.update ред "
3. рд╣реИрдВрдбрд▓рд┐рдВрдЧ рдореЗрдВ рддреНрд░реБрдЯрд┐
рдЪреАрдЬреЗрдВ рд╣рдореЗрд╢рд╛ рд╡реИрд╕реА рдирд╣реАрдВ рдЪрд▓рддреАрдВ, рдЬреИрд╕реА рдЙрдиреНрд╣реЗрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рдХрдИ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд░рд┐рдкреЛрд░реНрдЯ рдирд┐рдореНрди рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддреА рд╣реИрдВ:
- рдкреНрд░реЛрдЬреЗрдХреНрдЯ ... рдЖрд╡рд╢реНрдпрдХ рд╕реНрд░реЛрдд рдлрд╝реЛрд▓реНрдбрд░ рдЧреБрдо рд╣реИ: 'рдЬреАрди'
- рдкрде рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХрд╛ рд╕рдорд╛рдзрд╛рди рд╣реЛрдиреЗ рддрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрд╛ред
- R.java рд╢реНрд░реЗрдгреА рдХреА рдлрд╝рд╛рдЗрд▓ рдЦреЛрд▓рдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрдеред
рдЗрди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореЗрдиреВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ -> рд╕реНрд╡рдЪреНрдЫ рдЪреБрдиреЗрдВред
рдпрджрд┐ рдЖрдкрдХреЛ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдХреЛрдб рдХреА рд╕рдорд╕реНрдпрд╛ рд╣реИ, рддреЛ рдЖрдк рдиреАрдЪреЗ рд╡рд░реНрдгрд┐рдд рд▓реЙрдЧрдХрд╛рдЯ рджрд░реНрд╢рдХ (рдЕрдиреБрд╡рд╛рдж рдХреЗ рддреАрд╕рд░реЗ рдпрд╛ рдЪреМрдереЗ рднрд╛рдЧ рдореЗрдВ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
4. рдЖрдкрдХрд╛ рдкрд╣рд▓рд╛ Android рдкреНрд░реЛрдЬреЗрдХреНрдЯ
4.1ред рдкрд░рд┐рдпреЛрдЬрдирд╛ рдирд┐рд░реНрдорд╛рдг
рдпрд╣ рдРрдк рдПрдВрдбреНрд░реЙрдЗрдб рдорд╛рд░реНрдХреЗрдЯрдкреНрд▓реЗрд╕ рдореЗрдВ рднреА рдЙрдкрд▓рдмреНрдз рд╣реИред рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдХреЛ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдЦреЛрдЬ рдмреЙрдХреНрд╕ рдореЗрдВ "рд╡реЛрдЧреЗрд▓рд╛" рдЯрд╛рдЗрдк рдХрд░реЗрдВредрдлрд╝рд╛рдЗрд▓ рдЪреБрдиреЗрдВ -> рдирдпрд╛ -> рдЕрдиреНрдп -> тАЛтАЛAndroid -> Android рдкрд░рд┐рдпреЛрдЬрдирд╛ рдФрд░ Android рдкрд░рд┐рдпреЛрдЬрдирд╛ "de.vogella.android.tomy" рдмрдирд╛рдПрдБред
рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЗ рд▓рд┐рдП рдЫрдбрд╝реА:

рд╕рдорд╛рдкреНрдд рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред рдпрд╣ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕рдВрд░рдЪрдирд╛ рдмрдирд╛рдПрдЧрд╛ред

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

4.3ред рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдБ рдмрдирд╛рдПрдБ
рдПрдВрдбреНрд░реЙрдЗрдб рдЖрдкрдХреЛ рд╕рдВрд╕рд╛рдзрди рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ, рдЬреИрд╕реЗ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдФрд░ / рдпрд╛ рд░рдВрдЧ рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред XML рдпрд╛ рдЬрд╛рд╡рд╛ рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ UI рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдЗрди рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдлрд╝рд╛рдЗрд▓ "рд░реЗрд╕ / рдорд╛рди / string.xml" рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ рдФрд░ "рдЬреЛрдбрд╝реЗрдВ" рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред "рд░рдВрдЧ" рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ рдФрд░ "myColor" рдФрд░ "# 3399CC" рдореВрд▓реНрдп рдХреЗ рдирд╛рдо рдХреЗ рд╕рд╛рде рд╕рд╣реЗрдЬреЗрдВред


рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рднреА рдЬреЛрдбрд╝реЗрдВ, рд╡реЗ рдмрд╛рдж рдореЗрдВ рдЖрд╡реЗрджрди рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдХрд░реЗрдВрдЧреЗред
рддрд╛рд▓рд┐рдХрд╛ 1. рдкрдВрдХреНрддрд┐ рдЧреБрдг
рдирд╛рдо | рдореВрд▓реНрдп |
---|
myClickHandler | myClickHandler |
рд╕реЗрд▓реНрд╕рд┐рдпрд╕ | рддрд╛рдкрдорд╛рди рдХреЛ |
рдлрд╝рд╛рд░реЗрдирд╣рд╛рдЗрдЯ | рдлрд╝рд╛рд░реЗрдирд╣рд╛рдЗрдЯ рдХреЛ |
calc | рдЧрдгрдирд╛ |

XML рдореЛрдб рдореЗрдВ рд╕реНрд╡рд┐рдЪ рдХрд░реЗрдВ рдФрд░ рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдорд╛рди рд╕рд╣реА рд╣реИрдВ рдпрд╛ рдирд╣реАрдВред
<?xml version="1.0" encoding="utf-8"?> <resources> <string name="hello">Hello World, Convert!</string> <string name="app_name">Temperature Converter</string> <color name="myColor">#3399CC</color> <string name="myClickHandler">myClickHandler</string> <string name="celsius">to Celsius</string> <string name="fahrenheit">to Fahrenheit</string> <string name="calc">Calculate</string> </resources>
4.4ред UI рддрддреНрд╡реЛрдВ рдХреЛ рдЬреЛрдбрд╝рдирд╛
"рд░реЗрд╕ / рд▓реЗрдЖрдЙрдЯ / main.xml" рдЪреБрдиреЗрдВ рдФрд░ рдПрдВрдбреНрд░реЙрдЗрдб рдПрдбрд┐рдЯрд░ рдореЗрдВ рдЙрд╕ рдкрд░ рдбрдмрд▓-рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред рдпрд╣ рд╕рдВрдкрд╛рджрдХ рдЖрдкрдХреЛ рдпреВрдЖрдИ рдХреЛ рдбреНрд░реИрдЧ рдПрдВрдб рдбреНрд░реЙрдк рдпрд╛ рд╕реАрдзреЗ XML рдХреЛрдб рдореЗрдВ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛ред рдЖрдк рд╕рдВрдкрд╛рджрдХ рдХреЗ рдирд┐рдЪрд▓реЗ рднрд╛рдЧ рдореЗрдВ рдмрдЯрди рдХреЗ рд╕рд╛рде рдЗрди рджреЛ рдЯреИрдм рдХреЗ рдмреАрдЪ рд╕реНрд╡рд┐рдЪ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдк рддрддреНрд╡реЛрдВ рдХреА рд╕реНрдерд┐рддрд┐ рдФрд░ рд╕рдореВрд╣ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдХреЗрдЪ рджреГрд╢реНрдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдПрдХ рд╕рд╣реА рдХреНрд▓рд┐рдХ рдХреЗ рд╕рд╛рде "рд╣реИрд▓реЛ рд╡рд░реНрд▓реНрдб, рд╣реИрд▓реЛ!" рдХреЛ рд╣рдЯрд╛рдПрдВред "рджреГрд╢реНрдп" рдкреИрдирд▓ рд╕реЗ "EditText" рдЦреАрдВрдЪреЗрдВред "RadioGroup" рдХреЛ рджреЛ RadioButtons рд░реЗрдбрд┐рдпреЛ рдмрдЯрди рдХреЗ рд╕рд╛рде рд▓реЗрдЖрдЙрдЯ рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ (рдЖрдк рдПрдХ RadioButton рдХреЛ рд╣рдЯрд╛ рд╕рдХрддреЗ рд╣реИрдВ), рдПрдХ "Button" рдЬреЛрдбрд╝реЗрдВред рдкрд░рд┐рдгрд╛рдо рдирд┐рдореНрди рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдХреЗ рд╕рдорд╛рди рд╣реЛрдЧрд╛, рдФрд░ рдиреАрдЪреЗ рд▓рд┐рдЦреЗ рдЧрдП XMLред

"Main.xml" рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░реЗрдВ рдФрд░ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░реЗрдВ рдХрд┐ XML рдиреАрдЪреЗ рдХреЗ рд╕рдорд╛рди рд╣реИред
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <EditText android:layout_height="wrap_content" android:id="@+id/editText1" android:layout_width="match_parent" android:text="EditText"></EditText> <RadioGroup android:layout_height="wrap_content" android:id="@+id/radioGroup1" android:layout_width="match_parent"> <RadioButton android:text="RadioButton" android:layout_width="wrap_content" android:id="@+id/radio0" android:layout_height="wrap_content" android:checked="true"></RadioButton> <RadioButton android:text="RadioButton" android:layout_width="wrap_content" android:id="@+id/radio1" android:layout_height="wrap_content"></RadioButton> </RadioGroup> <Button android:text="Button" android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button> </LinearLayout>
4.5ред UI рд╕рдВрдкрддреНрддрд┐ рд╕рдорд░реНрдерди
рдпрджрд┐ рдЖрдк UI рддрддреНрд╡ рдЪреБрдирддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдЧреБрдгреЛрдВ рдХреЛ рджреЗрдЦрдХрд░ рдЗрд╕рдХреЗ рдЧреБрдгреЛрдВ рдХреЛ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВред рдЕрдзрд┐рдХрд╛рдВрд╢ рдЧреБрдгреЛрдВ рдХреЛ рд░рд╛рдЗрдЯ-рдХреНрд▓рд┐рдХ рдореЗрдиреВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рднреА рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред EditText рдЪреБрдиреЗрдВ рдФрд░ рдЗрд╕ рдЯреЗрдХреНрд╕реНрдЯ рдкреНрд░реЙрдкрд░реНрдЯреА рдХреЛ рд╣рдЯрд╛ рджреЗрдВред рдПрдХ рдлрд╝реАрд▓реНрдб рдЪреБрдиреЗрдВ, рдЙрд╕ рдкрд░ рд░рд╛рдЗрдЯ-рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ, рдЧреБрдг-> рдкрд╛рда рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ рдФрд░ рд╕рд╛рдордЧреНрд░реА рд╣рдЯрд╛рдПрдВред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЯреЗрдХреНрд╕реНрдЯ рдмреЙрдХреНрд╕ рдореЗрдВ рдХреЛрдИ рдЯреЗрдХреНрд╕реНрдЯ рдирд╣реАрдВ рджрд┐рдЦрд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛ред


EditText рдореЗрдВ рдЯреЗрдХреНрд╕реНрдЯ рдкреНрд░реЙрдкрд░реНрдЯреА рд╣рдЯрд╛рдирд╛ ()
рдкрд╣рд▓реЗ рд╕реНрд╡рд┐рдЪ рдХреЗ рджреВрд╕рд░реЗ рдФрд░ "рдлрд╝рд╛рд░реЗрдирд╣рд╛рдЗрдЯ" рдХреА рдЕрдкрдиреА "рдЯреЗрдХреНрд╕реНрдЯ" рд╕рдВрдкрддреНрддрд┐ рдХреЗ рд▓рд┐рдП рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╡рд┐рд╢реЗрд╖рддрд╛ рдЕрд╕рд╛рдЗрди рдХрд░реЗрдВред


рдЕрдм рд╕реЗ, рд▓реЗрдЦрдХ рдорд╛рдирддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдпреВрдЖрдИ рддрддреНрд╡реЛрдВ рдкрд░ рд╕рдВрдкрддреНрддрд┐ рдореЗрдиреВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдкрд╣рд▓реЗ рд░реЗрдбрд┐рдпреЛрдмрдЯрди рд░реЗрдбрд┐рдпреЛ рдмрдЯрди рдХреЗ рд▓рд┐рдП "рдЪреЗрдХ" рдкреНрд░реЙрдкрд░реНрдЯреА рдХреЛ "рд╕рд╣реА" рдкрд░ рд╕реЗрдЯ рдХрд░реЗрдВред рдЕрдкрдиреЗ рдмрдЯрди рдХреА рдЯреЗрдХреНрд╕реНрдЯ рдкреНрд░реЙрдкрд░реНрдЯреА рдХреЛ "рдХреИрд▓реНрдХ" рдЕрд╕рд╛рдЗрди рдХрд░реЗрдВ рдФрд░ "myClickHandler" рдХреЛ "рдСрдирдХреНрд▓рд┐рдХ" рдкреНрд░реЙрдкрд░реНрдЯреА рдореЗрдВ рдЕрд╕рд╛рдЗрди рдХрд░реЗрдВред "EditSext" рдореЗрдВ "рдЗрдирдкреБрдЯ рдкреНрд░рдХрд╛рд░" рд╕рдВрдкрддреНрддрд┐ рдХреЛ "рд╕рдВрдЦреНрдпрд╛рдмрджреНрдз" рдФрд░ "рдирдВрдмрд░рдбрд┐рдорд▓" рдорд╛рдкрджрдВрдбреЛрдВ рдкрд░ рд╕реЗрдЯ рдХрд░реЗрдВред
рдПрдХ рдкреГрд╖реНрдарднреВрдорд┐ (рдЕрдкрдиреЗ ViewGroup / LinearLayout) рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ рдФрд░ рдкреГрд╖реНрдарднреВрдорд┐ рдЧреБрдг рд░рдВрдЧ рд╡рд┐рд╢реЗрд╖рддрд╛ "@ рд░рдВрдЧ / myColor" рдкрд░ рд╕реЗрдЯ рдХрд░реЗрдВред

XML рд╕рд╣реА рд╣реИ, рдпрд╣ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "main.xml" рдЯреИрдм рдкрд░ рдЬрд╛рдПрдБред
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@color/myColor"> <EditText android:layout_height="wrap_content" android:id="@+id/editText1" android:layout_width="match_parent" android:inputType="numberDecimal|numberSigned"></EditText> <RadioGroup android:layout_height="wrap_content" android:id="@+id/radioGroup1" android:layout_width="match_parent"> <RadioButton android:layout_width="wrap_content" android:id="@+id/radio0" android:layout_height="wrap_content" android:text="@string/celsius" android:checked="true"></RadioButton> <RadioButton android:layout_width="wrap_content" android:id="@+id/radio1" android:layout_height="wrap_content" android:text="@string/fahrenheit"></RadioButton> </RadioGroup> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/calc" android:onClick="myClickHandler"></Button> </LinearLayout>
4.6ред рдЖрдкрдХреЗ рдЖрд╡реЗрджрди рдХрд╛ рдХреЛрдб
рдЕрдкрдиреЗ рдХреЛрдб рдХреЛ "Convert.java" рдореЗрдВ рдирд┐рдореНрди рдореЗрдВ рдмрджрд▓реЗрдВред рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ "myClickHandler" рдкрд░ рдХреЙрд▓ рдЖрдкрдХреЗ рдмрдЯрди рдХреА "OnClick" рд╕рдВрдкрддреНрддрд┐ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реЛрдЧреАред
package de.vogella.android.temperature; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.EditText; import android.widget.RadioButton; import android.widget.Toast; public class Convert extends Activity { private EditText text; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); text = (EditText) findViewById(R.id.editText1); }
4.7ред рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд▓реЙрдиреНрдЪ
Android рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЙрдиреНрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдЪреБрдиреЗрдВ, рдЙрд╕ рдкрд░ рд░рд╛рдЗрдЯ-рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ, Run-As-> Android рдПрдкреНрд▓рд┐рдХреЗрд╢рдиред рдзреИрд░реНрдп рд░рдЦреЗрдВ, рдПрдореБрд▓реЗрдЯрд░ рдмрд╣реБрдд рдзреАрд░реЗ-рдзреАрд░реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИред рдЖрдкрдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

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


5. рдореЗрдиреВ, рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдФрд░ рдЗрд░рд╛рджреЗ
5.1ред рдореЗрдиреНрдпреВ
Android рдореЗрдиреВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рджреЛ рддрд░реАрдХреЗ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдкрд╣рд▓рд╛ рд╡рд┐рдХрд▓реНрдк рдореЗрдиреВ рд╣реИ, рдЬрд┐рд╕реЗ рдореЗрдиреВ рдмрдЯрди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЦреЛрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЖрдкрдХреА рдЧрддрд┐рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХрд╛ рдореЗрдиреВ рдЖрдкрдХреА рдЧрддрд┐рд╡рд┐рдзрд┐ рдХреЗ onCreateOptionsMenu () рд╡рд┐рдзрд┐ рд╕реЗ рднрд░рд╛ рд╣реИред рдЖрдк рдЕрдкрдиреЗ рдЬрд╛рд╡рд╛ рдХреЛрдб рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдпрд╛ XML рдореЗрдВ рдореЗрдиреВ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдореЗрдиреВ рдХреЛ рдкрдВрдЬреАрдХреГрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕реЗ рдЖрдк "MenuInflator" рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рднрд░рддреЗ рд╣реИрдВред рдЖрдк GetMenuInflator () рд╡рд┐рдзрд┐ рдХреЗ рд╕рд╛рде рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ MenuInflator рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВрдЧреЗред
onCreateContextMenu () рдПрдХ рдмрд╛рд░ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдмрд╛рдж рдореЗрдВ рдореЗрдиреВ рдкрд░ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ onPrepareOptionsMenu () рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
рдореЗрдиреВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХрд╛ рджреВрд╕рд░рд╛ рд╡рд┐рдХрд▓реНрдк рд╡рд┐рдЬреЗрдЯ рдпреВрдЖрдИ (рджреЗрдЦреЗрдВ) рдХреЗ рд▓рд┐рдП рд╕рдВрджрд░реНрдн рдореЗрдиреВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рд╕рдВрджрд░реНрдн рдореЗрдиреВ рд╕рдХреНрд░рд┐рдп рд╣реИ рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╡реНрдпреВ рдкрд░ "рд▓рдВрдмреА рдкреНрд░реЗрд╕" рдХрд░рддрд╛ рд╣реИред
рджреГрд╢реНрдп рдХреЗ рд▓рд┐рдП рд╕рдВрджрд░реНрдн рдореЗрдиреВ registerForContextMenu (рджреЗрдЦреЗрдВ) рд╡рд┐рдзрд┐ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкрдВрдЬреАрдХреГрдд рд╣реИред OnCreateContextMenu () рд╡рд┐рдзрд┐ рд╕рдХреНрд░рд┐рдп рдореЗрдиреВ рдХреЛ рд╣рд░ рдмрд╛рд░ рдХреЙрд▓ рдХрд░рддреА рд╣реИ, рдЙрдкрдпреЛрдЧ рдХреЗ рдмрд╛рдж рд╕рдВрджрд░реНрдн рдореЗрдиреВ рд░реАрд╕реЗрдЯ рдХреА рддрд░рд╣ред Android рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдЖрдкрдХреЗ рджреГрд╢реНрдп рдореЗрдВ рд╡рд┐рдХрд▓реНрдк рднреА рдЬреЛрдбрд╝ рд╕рдХрддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, "EditText" рдкрд╛рда рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╡рд┐рдХрд▓реНрдк рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдмрд╣реБрдд рдХреБрдЫред
5.2ред рдкрд░рд┐рдпреЛрдЬрдирд╛
рдпрд╣ рднрд╛рдЧ рджрд┐рдЦрд╛рдПрдЧрд╛ рдХрд┐ рдореЗрдиреВ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреИрд╕реЗ рдмрдирд╛рдПрдВ рдФрд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВ, рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рдХреИрд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░реЗрдВ рдФрд░ рдЗрдВрдЯреЗрдВрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЧрддрд┐рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рдмреАрдЪ рдХреИрд╕реЗ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░реЗрдВред "HelloPreferences" рдЧрддрд┐рд╡рд┐рдзрд┐ рдХреЗ рд╕рд╛рде рдкреНрд░реЛрдЬреЗрдХреНрдЯ "de.vogella.android.preferences" рдмрдирд╛рдПрдВред "/Res/layout/main.xml" рдлрд╝рд╛рдЗрд▓ рдореЗрдВ UI рдХреЛ рдирд┐рдореНрди рдореЗрдВ рдмрджрд▓реЗрдВ:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <Button android:id="@+id/Button01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Show Preferences"></Button> <Button android:id="@+id/Button02" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Change Preferences" android:onClick="changePreferences"></Button> </LinearLayout>
5.3ред XML рд╕рдВрд╕рд╛рдзрди рдореЗрдВ рдореЗрдиреВ рдЬреЛрдбрд╝рдирд╛
рдореЗрдиреВ рдХреЛ XML рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ, рдЙрд╕ рдкрд░ рд░рд╛рдЗрдЯ-рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ рдФрд░ рдирдпрд╛ -> рдЕрдиреНрдп -> тАЛтАЛAndroid -> "Android XML рдлрд╝рд╛рдЗрд▓" рдЪреБрдиреЗрдВред "рдореЗрдиреВ" рд╡рд┐рдХрд▓реНрдк рдЪреБрдиреЗрдВ, рдлрд╝рд╛рдЗрд▓ рдХреЗ рд░реВрдк рдореЗрдВ "menu.xml" рджрд░реНрдЬ рдХрд░реЗрдВ рдФрд░ "рд╕рдорд╛рдкреНрдд" рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред

рдЬреЛрдбрд╝реЗрдВ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ рдФрд░ "рдЖрдЗрдЯрдо" рдЪреБрдиреЗрдВред рдирд┐рдореНрди рдорд╛рди рд╕реЗрдЯ рдХрд░реЗрдВред рдпрд╣ рдЖрдкрдХреЗ рдореЗрдиреВ рдореЗрдВ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред рд╣рдорд╛рд░рд╛ рдПрдХ рд░рд┐рдХреЙрд░реНрдб рд╣реЛрдЧрд╛ред

рдЕрдкрдиреЗ "HelloPreferences" рд╡рд░реНрдЧ рдХреЛ рдирд┐рдореНрди рдореЗрдВ рдмрджрд▓реЗрдВред рдореЗрдиреВ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП OnCreateOptionsMenu рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред "OnOptionsItemSelected" рдореЗрдВ рд╡реНрдпрд╡рд╣рд╛рд░ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЯреЛрд╕реНрдЯреНрд╕ (рдЯреЛрд╕реНрдЯ - рдПрдХ рдЕрдзрд┐рд╕реВрдЪрдирд╛, рдПрдХ рд╕рдВрджреЗрд╢ рдЬреЛ рдЦрд┐рдбрд╝рдХреА рдХреА рд╕рддрд╣ рдкрд░ рдкреЙрдк рдЕрдк рд╣реЛрддрд╛ рд╣реИ) рдХреЛ рдкреИрд░рд╛рдореАрдЯрд░ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХрд╛ рдХрд╛рд░рдг рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдард┐рди-рдХреЛрдбрд┐рдд рд╣реИред рдпрджрд┐ рдЖрдк рдореЗрдиреВ рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреЛ рдЕрдХреНрд╖рдо рдпрд╛ рдЫреБрдкрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк onPrepareOptionsMenu рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рд╣рд░ рдмрд╛рд░ рдкрд╣рд▓реЗ рд╕реЗ рдХрд╣реЗ рдЧрдП рдореЗрдиреВ рдХреЛ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИред
package de.vogella.android.preferences; import android.app.Activity; import android.os.Bundle; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; import android.widget.Toast; public class HelloPreferences extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.menu, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { Toast.makeText(this, "Just a test", Toast.LENGTH_SHORT).show(); return true; } }
рдЕрдкрдирд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЙрдиреНрдЪ рдХрд░реЗрдВ рдФрд░ рдПрдореБрд▓реЗрдЯрд░ рдореЗрдВ "рдореЗрдиреВ" рджрдмрд╛рдПрдВред рдЖрдкрдХрд╛ рдореЗрдиреВ рджрд┐рдЦрд╛рдИ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрджрд┐ рдЖрдк рдПрдХ рдореЗрдиреВ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдПрдХ рдЫреЛрдЯрд╛ рд╕реВрдЪрдирд╛рддреНрдордХ рд╕рдВрджреЗрд╢ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рд┐рдПред

5.4ред рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛
рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдорд╛рди рдХреЛ XML рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рднреА рд╕реЙрд░реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕ рдмрд╛рд░ рдПрдХ рдФрд░ Android XML рдлрд╝рд╛рдЗрд▓ "рдкреНрд░рд╛рдердорд┐рдХрддрд╛рдПрдБред xml" рдмрдирд╛рдПрдВ, рдЬреИрд╕реЗ "рдкреНрд░рд╛рдердорд┐рдХрддрд╛"ред

рдЗрд╕ рд╢реНрд░реЗрдгреА рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ, рдПрдХ рд╢реНрд░реЗрдгреА рдЬреЛрдбрд╝реЗрдВ рдФрд░ рджреЛ "EditTextPreferences" рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ: "рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛" рдФрд░ "рдкрд╛рд╕рд╡рд░реНрдб"ред



рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рд╕рдкреЛрд░реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдПрдХреНрдЯрд┐рд╡рд┐рдЯреАрдЬ рдХреЛ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдХреЗ рд╕рд╛рде рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдЧрддрд┐рд╡рд┐рдзрд┐ addPreferencesFromResource () рд╡рд┐рдзрд┐ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕рдВрд╕рд╛рдзрди рдкрд░рд┐рднрд╛рд╖рд╛ рдХреЛ рд▓реЛрдб рдХрд░ рд╕рдХрддреА рд╣реИред рдПрдХ "рд╡рд░реАрдпрддрд╛рдПрдБ" рдПрдХ рд╡рд░реНрдЧ рдмрдирд╛рдПрдБ рдЬреЛ "рд╡рд░реАрдпрддрд╛" xml рдХреЛ рд▓реЛрдб рдХрд░реЗрдЧрд╛ред
package de.vogella.android.preferences; import android.os.Bundle; import android.preference.PreferenceActivity; public class Preferences extends PreferenceActivity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); addPreferencesFromResource(R.xml.preferences); } }
рдЗрд╕ рд╡рд░реНрдЧ рдХреЛ Android рдХреЗ рд▓рд┐рдП рдПрдХ рдЧрддрд┐рд╡рд┐рдзрд┐ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрд▓рдмреНрдз рдХрд░рд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЗрд╕реЗ рдЕрдкрдиреЗ AndroidManifest.xml рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкрдВрдЬреАрдХреГрдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред "AndroidManifest.xml" рдФрд░ "рдПрдкреНрд▓рд┐рдХреЗрд╢рди" рдЯреИрдм рдЪреБрдиреЗрдВред "рдкреНрд░рд╛рдердорд┐рдХрддрд╛рдПрдВ" рдЧрддрд┐рд╡рд┐рдзрд┐ рдЬреЛрдбрд╝реЗрдВред

рд╣рдо рдПрдХ рдмрд╛рд░ рдореЗрдиреВ рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЪрдпрди рдХрд░рдХреЗ "рдкреНрд░рд╛рдердорд┐рдХрддрд╛рдПрдВ" рдЧрддрд┐рд╡рд┐рдзрд┐ рдХреЛ рдЦреЛрд▓рдиреЗ рдХреЗ рд▓рд┐рдП onOptionsItemSelected () рд╡рд┐рдзрд┐ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВрдЧреЗред рд╣рд╛рд▓рд╛рдБрдХрд┐ рдЕрдм рд╣рдорд╛рд░реЗ рдореЗрдиреВ рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рд╣реА рд╡рд┐рдХрд▓реНрдк рд╣реИ, рд╣рдо рдХрдИ рдирдИ рдореЗрдиреВ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд░рд╣рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рд┐рдЪрд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рд╕рдорд░реНрдерд┐рдд рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдПрдХ рдмрдЯрди рднреА рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд╕рд╛рдЭрд╛рдХрд░рдг рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдкреНрд░рдмрдВрдзрдХ" рд╡рд░реНрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред
рдкрд╣рд▓рд╛ рдмрдЯрди рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЯреЛрд╕реНрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рдорд░реНрдерд┐рдд рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рджрд┐рдЦрд╛рдПрдЧрд╛, рдФрд░ рджреВрд╕рд░рд╛ рдмрдЯрди рд╕рдорд░реНрдерд┐рдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рдХреЛ рджрд┐рдЦрд╛рдПрдЧрд╛ рдХрд┐ рдЖрдк рдЬрд╛рд╡рд╛ рдХреЛрдб рдХреЗ рд▓рд┐рдП рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдХреИрд╕реЗ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВред
package de.vogella.android.preferences; import android.app.Activity; import android.content.Intent; import android.content.SharedPreferences; import android.content.SharedPreferences.Editor; import android.os.Bundle; import android.preference.PreferenceManager; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.Toast; public class HelloPreferences extends Activity { SharedPreferences preferences; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Button button = (Button) findViewById(R.id.Button01);
5.5ред рд▓рд╛рдВрдЪ
рдЕрдкрдирд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЙрдиреНрдЪ рдХрд░реЗрдВред рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ "рдореЗрдиреВ" рдмрдЯрди рджрдмрд╛рдПрдВ, рдлрд┐рд░ "рдкреНрд░рд╛рдердорд┐рдХрддрд╛рдПрдВ" рдореЗрдиреВ рдЖрдЗрдЯрдо рдЪреБрдиреЗрдВред рдЖрдкрдХреЛ рдЕрдкрдиреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рджрд░реНрдЬ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдлрд┐рд░ рдЕрдкрдиреА рдореБрдЦреНрдп рдЧрддрд┐рд╡рд┐рдзрд┐ рдкрд░ рд▓реМрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдмреИрдХ рдмрдЯрди рджрдмрд╛рдПрдВред рдпрджрд┐ рдЖрдк рдЕрдкрдирд╛ рдкрд╣рд▓рд╛ рдмрдЯрди рджрдмрд╛рддреЗ рд╣реИрдВ рддреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдорд╛рдиреЛрдВ рдХреЛ рдЫреЛрдЯреА рдЯреЛрд╕реНрдЯ рдЦрд┐рдбрд╝рдХрд┐рдпреЛрдВ рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрджрд┐ рдЖрдк рджреВрд╕рд░рд╛ рдмрдЯрди рджрдмрд╛рддреЗ рд╣реИрдВ, рддреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рдПрдЧрд╛ред

6. AlertDialog рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рдВрд╡рд╛рдж
рдЖрдЬ рдореИрдВ рдпрд╣рд╛рдБ рд░реБрдХрд╛ рдерд╛ред рдореБрдЭреЗ рдЖрд▓реЛрдЪрдирд╛ рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреАред