Ionic-framework: рдХреАрдмреЛрд░реНрдб рдХреЗ рдЦреБрд▓реЗ рд╣реЛрдиреЗ рдкрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЯреИрдм рдЫрд┐рдкрд╛рдПрдВ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 24 рдЬреВрди 2016  ┬╖  61рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: ionic-team/ionic-framework

рдЬрдм рдПрдХ рдЯреИрдм рдкреЗрдЬ (рд╕реНрдерд┐рддрд┐ = рдиреАрдЪреЗ) рдореЗрдВ рдХреАрдмреЛрд░реНрдб рдЦреЛрд▓рд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЯреИрдм рдХреАрдмреЛрд░реНрдб рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рджрд┐рдЦрд╛рдИ рджреЗрддреЗ рд╣реИрдВред

рдЕрдкреЗрдХреНрд╖рд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рдХреАрдмреЛрд░реНрдб рдХреЗ рджрд┐рдЦрд╛рдИ рджреЗрдиреЗ рдкрд░ рдЯреИрдм рдХреЛ рдЫрд┐рдкрд╛рдирд╛ рд╣реИ

рдкреНрд░рдЬрдирди рдХреЗ рдЪрд░рдг:

  1. рдПрдХ рд╕реНрдЯрд╛рд░реНрдЯрд░ рдЯреИрдм рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдмрдирд╛рдПрдВ
  2. рдкреГрд╖реНрда рдореЗрдВ рдЖрдпрди-рдЗрдирдкреБрдЯ рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВ
  3. рдЗрд╕реЗ рдХрд┐рд╕реА рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдЪрд▓рд╛рдПрдБ рдФрд░ рдЗрдирдкреБрдЯ рддрддреНрд╡ рдкрд░ рдлрд╝реЛрдХрд╕ рдХрд░реЗрдВ

рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдХреАрдмреЛрд░реНрдб рдХреЗ рдЦреБрд▓реЗ рд╣реЛрдиреЗ рдкрд░ (.keyboard-is-open) рдкреЗрдЬ рдкрд░ CSS рдХреНрд▓рд╛рд╕ рдЬреЛрдбрд╝реА рдЬрд╛ рд╕рдХреЗ рддрд╛рдХрд┐ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗ

рдпрд╣ рдореБрджреНрджрд╛ рдЖрдпреЛрдирд┐рдХ 2 . рдХреЗ рд▓рд┐рдП рд╣реИ

рдХреЙрд░реНрдбреЛрд╡рд╛ рд╕реАрдПрд▓рдЖрдИ: 5.2.0
рдЧрд▓реНрдк рд╕рдВрд╕реНрдХрд░рдг: рд╕реАрдПрд▓рдЖрдИ рд╕рдВрд╕реНрдХрд░рдг 3.9.0
рдЧрд▓реНрдк рд▓реЛрдХрд▓: рд▓реЛрдХрд▓ рд╡рд░реНрдЬрди 3.9.1
рдЖрдпреЛрдирд┐рдХ рдлреНрд░реЗрдорд╡рд░реНрдХ рд╕рдВрд╕реНрдХрд░рдг: 2.0.0-рдмреАрдЯрд╛.9
рдЖрдпрдирд┐рдХ рд╕реАрдПрд▓рдЖрдИ рд╕рдВрд╕реНрдХрд░рдг: 2.0.0-рдмреАрдЯрд╛.30
рдЖрдпреЛрдирд┐рдХ рдРрдк рд▓рд┐рдм рд╕рдВрд╕реНрдХрд░рдг: 2.0.0-рдмреАрдЯрд╛.16
рдУрдПрд╕:
рдиреЛрдб рд╕рдВрд╕реНрдХрд░рдг: v4.3.2

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдКрдкрд░ рдмрддрд╛рдП рдЧрдП @Jatapiaro рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЙрд░реНрдбреЛрд╡рд╛ рдкреНрд▓рдЧрдЗрди рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рд╣реИ:

cordova plugin add cordova-custom-config

рдлрд┐рд░ рдореИрдВрдиреЗ рдЕрдкрдиреЗ config.xml рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛ рдЬреЛрдбрд╝рд╛ рд╣реИ:

<platform name="android">
    <preference name="android-manifest/application/activity/<strong i="10">@android</strong>:windowSoftInputMode" value="adjustPan" />
    ...
</platform>

Android рдФрд░ iOS рдкрд░ рдХрд╛рдо рдХрд░рдирд╛

рд╕рднреА 61 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рд╣рд╛рдБ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк Android рдХреЗ рдЕрдзреАрди рд╣реИрдВред рдХреАрдмреЛрд░реНрдб рдХреА рдкреБрд░рд╛рдиреА рд╕рдорд╕реНрдпрд╛...

рдореИрдВрдиреЗ рдХреАрдмреЛрд░реНрдб рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ @tlancina рдХреЗ PhoneGap рдмрд╛рдд рджреЗрдЦреА рдФрд░ рдпрд╣ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдПрдХ рдмрд╣реБрдд рдХрдард┐рди рдореБрджреНрджрд╛ рд▓рдЧрддрд╛ рд╣реИ!
рдореИрдВ рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдПрдВрдбреНрд░реЙрдЗрдб рдХреЗ рддрд╣рдд рднреА рдореЗрд░реЗ рдРрдк рдореЗрдВ рдХреАрдмреЛрд░реНрдб рдЦреЛрд▓рдиреЗ рдкрд░ рдиреАрдЪреЗ рдЯреИрдм рдмрд╛рд░ рдХреЛ рдзрдХреНрдХрд╛ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЗрд╕рд╕реЗ рднреА рдмрджрддрд░ рдЗрдирдкреБрдЯ рдлрд╝реАрд▓реНрдб рдХреЛ рдХрд╡рд░ рдХрд░рдирд╛ рд╣реИ рдЬреЛ рдиреАрдЪреЗ рдХреЗ рдкрд╛рд╕ рд╣реИрдВред рдЯрд┐рдо рдиреЗ рдХрд╣рд╛, рдХрд┐рд╕реА рдХреЛ рдЗрд╕рд╕реЗ рдмрдЪрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдореЗрд░реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рдВрдмреА рд╕реВрдЪрд┐рдпрд╛рдВ рд╣реИрдВред
рдореИрдВрдиреЗ рдкреВрд░реЗ рдХреАрдмреЛрд░реНрдб рд╡рд┐рд╖рдп рдХреЛ рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдФрд░ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдердЧрд┐рдд рдХрд░ рджрд┐рдпрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЖрдпрдирд┐рдХ рдореЗрдВ рдХреИрд╕реЗ рдЪрд▓рддрд╛ рд╣реИред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, @tlancina , рдХреНрдпрд╛ рдЖрдпрдирд┐рдХ рдореЗрдВ рдХреАрдмреЛрд░реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд╕рд░реНрд╡реЛрддреНрддрдо рдЕрднреНрдпрд╛рд╕ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рд╣реИ (рдЖрдпрдирд┐рдХ рдХреАрдмреЛрд░реНрдб рдкреНрд▓рдЧрдЗрди рдХреЛ рдПрдХреАрдХреГрдд рдХрд░рдирд╛,

рдореИрдВ рднреА рдЗрд╕ рдореБрджреНрджреЗ рдХрд╛ рдЕрдиреБрднрд╡ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

рд╣рдорд╛рд░реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рднреА рдпрд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИред рдЗрд╕ рд╕рдВрдмрдВрдз рдореЗрдВ рдХреЛрдИ рдпреЛрдЬрдирд╛?

рд╣реЗ рджреЛрд╕реНрддреЛрдВ, рджрд░реНрдж рднреА рдорд╣рд╕реВрд╕ рд╣реЛ рд░рд╣рд╛ рд╣реИ - рд╕рдВрдпреЛрдЧ рд╕реЗ рдХреЛрдИ рдЦрдмрд░?

рдЗрд╕ рдорд╣рд╛рди рд╕реБрд╡рд┐рдзрд╛, рдЯреИрдм рдХреА рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдФрд░ рдЫрд┐рдкрд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рд╣реЗрдбрд░ рднреА рдЕрдЪреНрдЫрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

@ jgw96 рдореИрдВрдиреЗ рджреЗрдЦрд╛ рдХрд┐ рдЖрдкрдиреЗ рдЗрд╕ рдкрд░ рдПрдиреНрд╣рд╛рдВрд╕рдореЗрдВрдЯ рд▓реЗрдмрд▓ рдЬреЛрдбрд╝рд╛ рд╣реИред рдЪреВрдВрдХрд┐ рджреЗрд╢реА рдРрдкреНрд╕ рд╕рдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ (рдХреАрдмреЛрд░реНрдб рдХреЗ рдКрдкрд░ рдЯреИрдм рд▓реЗ рдЬрд╛рдирд╛) рдФрд░ рдЯреИрдм рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рд╛рдордЧреНрд░реА рдЕрдЪрд▓ рд╕рдВрдкрддреНрддрд┐ рдХреЛ рдХреЗрд╡рд▓ рдХреБрдЫ рдкрдВрдХреНрддрд┐рдпреЛрдВ рддрдХ рд╕реАрдорд┐рдд рдХрд░ рджреЗрддреЗ рд╣реИрдВ, рдЦрд╛рд╕рдХрд░ рдЫреЛрдЯреЗ рдлреЛрди рдкрд░, рдХреНрдпрд╛ рдЗрд╕реЗ рдФрд░ рдЕрдзрд┐рдХ рдЧрдВрднреАрд░ рдореБрджреНрджрд╛ рдирд╣реАрдВ рдорд╛рдирд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП?

рдЕрд╕реНрдерд╛рдпреА рд╕рдорд╛рдзрд╛рди рдХреА рддрд▓рд╛рд╢ рдХрд░ рд░рд╣реЗ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдпрд╣ рдХрд┐рдпрд╛ рд╣реИ:

TabsComponent рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░:

platform.ready().then(() => {
            Keyboard.onKeyboardShow().subscribe(() => {
                document.body.classList.add('keyboard-is-open');
            });

            Keyboard.onKeyboardHide().subscribe(() => {
                document.body.classList.remove('keyboard-is-open');
            });
});

рд╕реАрдПрд╕рдПрд╕ рдХреЗ рдЕрдВрджрд░:

body.keyboard-is-open ion-tabbar {
  display: none;
}

body.keyboard-is-open scroll-content {
  margin-bottom: 0 !important;
}

рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХрд┐рд╕реА рдкреГрд╖реНрда рдкрд░ рдПрдХрд╛рдзрд┐рдХ рдЯреИрдм рд╣реИрдВ рддреЛ рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЙрдиреНрд╣реЗрдВ рд╕реАрдзреЗ рдЕрдкрдиреЗ рд╕реАрдПрд╕рдПрд╕ рдХреЗ рд╕рд╛рде рдЪреБрди рд╕рдХрддреЗ рд╣реИрдВред

рдореИрдВ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЖрдпреЛрдирд┐рдХ рдмреАрдЯрд╛ 11 рдЪрд▓рд╛ рд░рд╣рд╛ рд╣реВрдВ

рдЗрд╕ рдкрд░ рдХрд┐рд╕реА рднреА рдЕрджреНрдпрддрди?

@ рдмреАрд╡реАрдПрдХреНрд╕89 рдзрдиреНрдпрд╡рд╛рджред
Rc0 рд▓рд┐рдП css . рдореЗрдВ рдереЛрдбрд╝рд╛ рд╕рд╛ рдмрджрд▓рд╛рд╡ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ

body.keyboard-is-open .tabbar {
  display: none;
}

body.keyboard-is-open .scroll-content {
  margin-bottom: 0 !important;
}

рдЕрднреА рддрдХ рдХреЛрдИ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ

рдХреЗрд╡рд▓ рдпрд╣ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдПрдВрдбреНрд░реЙрдЗрдб рдкрд░ рдлреБрд▓рд╕реНрдХреНрд░реАрди рдореЛрдб рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рд╕реЗ рднреА рдореЗрд░реЗ рд▓рд┐рдП рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдареАрдХ рд╣реЛ рдЬрд╛рддреА рд╣реИред
рдпрд╣ рд╕реЗрдЯрд┐рдВрдЧ рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
<preference name="Fullscreen" value="true" />
config.xml рдореЗрдВ, рдФрд░ рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдлреБрд▓рд╕реНрдХреНрд░реАрди рдЬреЛрдбрд╝рдирд╛ рдпрджрд┐ рдЖрдк v5.0.0 рд╕реЗ рдкреБрд░рд╛рдиреЗ рдХреЙрд░реНрдбреЛрд╡рд╛ рдПрдВрдбреНрд░реЙрдЗрдб рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рдХреНрдпрд╛ рдпрд╣ рдЕрдЧрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдареАрдХ рд╣реЛрдиреЗ рдЬрд╛ рд░рд╣реЗ рдмрд╛рдХреА рдХреАрдмреЛрд░реНрдб рдореБрджреНрджреЛрдВ рдХреЗ рд╕рд╛рде рддрдп рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ (рдХрд┐рд╕реА рдЕрдиреНрдп рдереНрд░реЗрдб рдореЗрдВ рдХреАрдмреЛрд░реНрдб рдореБрджреНрджреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрддрд╛рддреЗ рд╣реБрдП рдХреБрдЫ рдкрдврд╝реЗрдВ) рдпрд╛ рдпрд╣ рджрд░рд╛рд░реЛрдВ рдХреЗ рдмреАрдЪ рдЧрд┐рд░ рдЧрдпрд╛ рд╣реИ?

@RaymondAtivie
рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ, рдХреНрдпрд╛ рдпрд╣ рдЕрдЧрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рддрдп рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ?

рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП RC3 рдореЗрдВ рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред
рдСрдирдХреЗрдмреЛрд░реНрдбрд╢реЛ() рдХреЛ рдХрднреА рдирд╣реАрдВ рдирд┐рдХрд╛рд▓ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ ...

+1я╝М рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИред

рдХреЙрд░реНрдбреЛрд╡рд╛ рд╕реАрдПрд▓рдЖрдИ: 6.3.1
рдЖрдпреЛрдирд┐рдХ рд╕реАрдПрд▓рдЖрдИ рд╕рдВрд╕реНрдХрд░рдг: 2.1.8
рдЖрдпреЛрдирд┐рдХ рдРрдк рд▓рд┐рдм рд╕рдВрд╕реНрдХрд░рдг: 2.1.4
рдЖрдИрдУрдПрд╕-рддреИрдирд╛рддреА рд╕рдВрд╕реНрдХрд░рдг: рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ
рдЖрдИрдУрдПрд╕-рд╕рд┐рдо рд╕рдВрд╕реНрдХрд░рдг: рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ
рдУрдПрд╕: рд╡рд┐рдВрдбреЛрдЬ 8.1
рдиреЛрдб рд╕рдВрд╕реНрдХрд░рдг: v6.4.0
рдПрдХреНрд╕рдХреЛрдб рд╕рдВрд╕реНрдХрд░рдг: рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ

рдореЗрд░реЗ рдкрд╛рд╕ рднреА рдпрд╣реА рдореБрджреНрджрд╛ рд╣реИ, рдФрд░ @RaymondAtivie рджреНрд╡рд╛рд░рд╛ рдкреЛрд╕реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдмрд┐рд▓реНрдХреБрд▓ рд╕рд╣реА рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред рдЯреИрдм рдЕрдм рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗ рд░рд╣реЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рд╢реАрд░реНрд╖ рд╕реАрдорд╛ рдЕрднреА рднреА рджрд┐рдЦрд╛рдИ рджреЗ рд░рд╣реА рд╣реИред рдХреНрдпрд╛ рдХрд┐рд╕реА рдХрд╛ рдХреЛрдИ рдореБрджреНрджрд╛ рд╣реИ? рдореИрдВрдиреЗ рдЬреЛрдбрд╝рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ
box-shadow: none; border-top: none;
рдФрд░ рдлрд┐рд░ рднреА рдЯреИрдмрдмрд╛рд░ рд╕реЗ рджрд┐рдЦрд╛рдИ рджреЗрдиреЗ рд╡рд╛рд▓реА рдЙрд╕реА рд╢реАрд░реНрд╖ рд╕реАрдорд╛ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрддреА рд╣реИред рдХреЛрдИ рд╡рд┐рдЪрд╛рд░?

рдореИрдВрдиреЗ ion-content рд╡рд┐рдХрд▓реНрдк fullscreen="true" рдХреЛ рдмрджрд▓рдХрд░ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд┐рдпрд╛ рд╣реИ
рдФрд░ рдЯреИрдмрдмрд╛рд░ рдХреЗ рд▓рд┐рдП рдЫрд┐рдкреА рд╢реИрд▓реА рд╕реЗрдЯ рдХрд░рдирд╛

      var tabbars =     document.getElementsByClassName('tabbar');
      for(var i=0; i<tabbars.length; i++) {
        var node = <HTMLElement>tabbars[i];
        node.style.display = hide === true && 'none' || 'block';
      }

рдореИрдВрдиреЗ рдпрд╣ рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ рдФрд░ рдЕрднреА рднреА рд╡рд╣реА рд╢реАрд░реНрд╖ рд╕реАрдорд╛ рджрд┐рдЦ рд░рд╣реА рд╣реИ, рднрд▓реЗ рд╣реА рдЯреИрдмрдмрд╛рд░ рдЭреВрдард╛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рд╣реЛред

@payneBrandon рдореИрдВ рд╢реАрд░реНрд╖ рдмрд╛рд░ рдЫреБрдкрд╛ рд░рд╣рд╛ рд╣реВрдБ
<ion-header *ngIf="isShowHeader()">

рдореЗрд░рд╛ рдЖрдпрди-рдЯреИрдм рд╕рдмрд╕реЗ рдиреАрдЪреЗ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣реЗрдбрд░ рдХреЛ рдЫрд┐рдкрд╛рдиреЗ рд╕реЗ рдпрд╣ рдЬреНрдпрд╛рджрд╛ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдореИрдВ рдЬрд┐рд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдЙрд╕рдХрд╛ рдПрдХ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдореИрдВрдиреЗ рд╕рдВрд▓рдЧреНрди рдХрд┐рдпрд╛ рд╣реИред рдХреАрдмреЛрд░реНрдб рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдиреАрдЪреЗ рдХреЗ рдЯреИрдм рдЫрд┐рдкреЗ рд╣реБрдП рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдЕрднреА рднреА рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдХреБрдЫ рд╢реАрд░реНрд╖ рдмреЛрд░реНрдбрд░ рд▓рд╛рдЗрди рд╣реИ рдЬреЛ рдореЗрд░реЗ рдЪрд╛рд░реЛрдВ рдУрд░ рд╕реНрдХреНрд░реЙрд▓ рдХрд░рдиреЗ рдкрд░ рдмрдиреА рд░рд╣рддреА рд╣реИред
20170113_102807

рдпрд╣ рдмрд╛рд░ рдлреЙрд░реНрдо рдХреЗ рдПрдХ рд╣рд┐рд╕реНрд╕реЗ рдХреА рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ
рдХреНрдпрд╛ рдЖрдк рдЕрдкрдирд╛ рдПрдЪрдЯреАрдПрдордПрд▓ рдХреЛрдб рд╕рд╛рдЭрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

рдЕрдВрдд рдореЗрдВ рдЗрд╕рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛ рд▓рд┐рдпрд╛ред рдореБрдЭреЗ рд╣реЗрдбрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд┐рдВрддрд╛ рдХрд░рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рдирд╣реАрдВ рдереА рдХреНрдпреЛрдВрдХрд┐ рдореЗрд░реЗ рдЯреИрдм рдиреАрдЪреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдкрд╛рдж рд▓реЗрдЦ (рдбреБрд╣!) рдХреЛ рджреЗрдЦрдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИред рдореИрдВрдиреЗ рдЗрд╕реЗ рдЫрд┐рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╛рдж рд▓реЗрдЦ рдкрд░ рдПрдХ рд╕рд╢рд░реНрдд рд╡рд░реНрдЧ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рд╣реИ рдпрджрд┐ рд╢рд░реАрд░ рдореЗрдВ рдХреБрдВрдЬреАрдкрдЯрд▓-рдЦреБрд▓рд╛ рд╡рд░реНрдЧ рдФрд░ рдмреАрдПрдПрдо, рд╡реНрдпрд╡рд╕рд╛рдп рдореЗрдВ рд╡рд╛рдкрд╕ рд╣реИред рд╕рд╣рд╛рдпрддрд╛ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!

@payneBrandon рд╢реБрднрдХрд╛рдордирд╛рдПрдБ

рдЙрд╕ рдлреАрдЪрд░ рдХреЛ рднреА рджреЗрдЦрдирд╛ рдЪрд╛рд╣реЗрдВрдЧреЗред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ ion-footer рдХреЛ рдЦреБрд▓реЗ/рдмрдВрдж рдХреАрдмреЛрд░реНрдб рдкрд░ рджреГрд╢реНрдпрддрд╛ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП

рдореИрдВрдиреЗ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдлрд┐рдХреНрд╕ рдХрд┐рдпрд╛ рд╣реИ (рдмреЗрд╢рдХ рдЖрджрд░реНрд╢ рдирд╣реАрдВ)ред .scroll-content рдореЗрдВ margin-bottom рдХрд╛ 56px , рдЙрд╕реА рдКрдВрдЪрд╛рдИ рдореЗрдВ рдЯреИрдм рд╣реИрдВред рдореИрдВ рдХреБрдВрдЬреА рдмреЛрд░реНрдб рдХреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реВрдВ:

public keyboardCheck() {
        return this.keyboard.isOpen();
}

рдФрд░ рдлрд┐рд░ рдЗрд╕ рд╡рд░реНрдЧ рдХреЛ ion-content рдЬреЛрдбрд╝ рджреЗрдВ, рдЬреЛ .scroll-content рдЕрднрд┐рднрд╛рд╡рдХ рд╣реИрдВ:

.keyboard-open .scroll-content {
    margin-bottom: 0px !important;
}

рдФрд░ рдЗрд╕реЗ ion-content :

<ion-content padding [ngClass]="{'keyboard-open': keyboardCheck()}">

tabs.html рдореЗрдВ рдЙрд╕реА рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреАрдмреЛрд░реНрдб рдЦреБрд▓рд╛ рд╣реЛрдиреЗ рдкрд░ рдореИрдВрдиреЗ рдЯреИрдм рднреА рдЫреБрдкрд╛рдП:

<ion-tabs [ngClass]="{'remove-tabs': keyboardCheck()}">

.remove-tabs .tabbar {
    display: none;
}

рдореИрдВрдиреЗ рдЗрд╕реЗ рдХреЗрд╡рд▓ рдЙрд╕ рдкреГрд╖реНрда рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдерд╛ рдЬрд┐рд╕реЗ рдореБрдЭреЗ рдареАрдХ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереАред

рдЖрдИрдУрдПрд╕ рдФрд░ рдПрдВрдбреНрд░реЙрдЗрдб рджреЛрдиреЛрдВ рдореЗрдВ рдХрд╛рдо рдХрд░рдирд╛ред

рд╣рд▓ рдХрд┐рдпрд╛

рд╕реАрдПрд╕рдПрд╕ рдЪрд┐рд╣реНрдирд┐рдд рдХреЛ рдЫреЛрдбрд╝рдХрд░ рдпрд╣ рдПрдХ рдЙрдЪрд┐рдд рд╕рдорд╛рдзрд╛рди рд╣реИред

```
'@angular/core' рд╕реЗ {рдШрдЯрдХ} рдЖрдпрд╛рдд рдХрд░реЗрдВ;
'рдЖрдпрдирд┐рдХ-рджреЗрд╢реА' рд╕реЗ {рдХреАрдмреЛрд░реНрдб} рдЖрдпрд╛рдд рдХрд░реЗрдВ
рдЖрдпрд╛рдд { рд╣реЛрдордкреЗрдЬ } '../home/home' рд╕реЗ;
'../about/about' рд╕реЗ {aboutPage} рдЖрдпрд╛рдд рдХрд░реЗрдВ;
'../contact/contact' рд╕реЗ {ContactPage} рдЖрдпрд╛рдд рдХрд░реЗрдВ;

@рдЕрд╡рдпрд╡({
рдЯреЗрдореНрдкрд▓реЗрдЯ рдпреВрдЖрд░рдПрд▓: 'рдЯреИрдм.рдПрдЪрдЯреАрдПрдордПрд▓'
})
рдирд┐рд░реНрдпрд╛рдд рд╡рд░реНрдЧ TabsPage {
// рдпрд╣ рдЯреИрдм рдШрдЯрдХ рдХреЛ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдХреМрди рд╕реЗ рдкреЗрдЬ
// рдкреНрд░рддреНрдпреЗрдХ рдЯреИрдм рдХрд╛ рдореВрд▓ рдкреГрд╖реНрда рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП
рдЯреИрдм1рд░реВрдЯ: рдХреЛрдИ рднреА = рд╣реЛрдордкреЗрдЬ;
tab2Root: рдХреЛрдИ рднреА = рдЕрдмрд╛рдЙрдЯрдкреЗрдЬ;
tab3Root: рдХреЛрдИ рднреА = рд╕рдВрдкрд░реНрдХ рдкреГрд╖реНрда;
valueforngif = рд╕рдЪ;

рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ (рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреАрдмреЛрд░реНрдб: рдХреАрдмреЛрд░реНрдб) { }
ionViewDidEnter(){
Keyboard.onKeyboardShow().subscribe(()=>{this.valueforngif=false})
Keyboard.onKeyboardHide().subscribe(()=>{this.valueforngif=true})
}}

this my tabs.html

    ```
 <ion-tabs *ngIf="valueforngif">
  <ion-tab [root]="tab1Root" tabTitle="Home" tabIcon="home"></ion-tab>
  <ion-tab [root]="tab2Root" tabTitle="About" tabIcon="information-circle" [tabsHideOnSubPages]="true"></ion-tab>
  <ion-tab [root]="tab3Root" tabTitle="Contact" tabIcon="contacts"></ion-tab>
</ion-tabs>

рдЕрдЪреНрдЫрд╛ @ efnan34 , рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЖрдкрдХреЛ рдЗрд╕реЗ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдореЗрдВ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

рдпрд╣ рдореЗрд░реЗ рдХреАрдмреЛрд░реНрдб рдХреЛ рдЦреЛрд▓рдиреЗ рдкрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдмрдВрдж рд╣реЛрдиреЗ рдХрд╛ рдХрд╛рд░рдг рдмрди рд░рд╣рд╛ рд╣реИ ... рдХреНрдпрд╛ рдпрд╣ рдЯреИрдм рдХреЛ рдЫрд┐рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдлреЛрдХрд╕ рдкрд░ рд▓реМрдЯрдиреЗ рдХреЗ рдХрд╛рд░рдг рд╣реИ рдЬреЛ рдмрджрд▓реЗ рдореЗрдВ рдХреАрдмреЛрд░реНрдб рдХреЛ рдмрдВрдж рдХрд░ рджреЗрддрд╛ рд╣реИ?

ionViewDidEnter(){
    Keyboard.onKeyboardShow().subscribe(()=>{this.valueforngif=false})
    Keyboard.onKeyboardHide().subscribe(()=>{this.valueforngif=true})
}

@ bvx89 рдЖрдкрдХрд╛ рд╕рдорд╛рдзрд╛рди рдХреЗрд╡рд▓ рд╡рд╣реА рд╣реИ рдЬреЛ рдореБрдЭреЗ Ionic 2.1.0 рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд┐рд▓ рд╕рдХрддрд╛ рд╣реИред рдЖрдпрдирд┐рдХ-рджреЗрд╢реА рдХреЗ рд▓рд┐рдП рдПрдХ рдмрдЧ рд▓реЙрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХрд╛ рдкрддрд╛ рдирд╣реАрдВ рдЪрд▓ рд░рд╣рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЕрдиреНрдп рдХрд╛рд░реНрдп рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕реБрдзрд╛рд░ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ

рдореБрдЭреЗ рд╡рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд░рд╣реА рд╣реИ @ рдХрд┐рд▓рдореЛрд░
рдХреНрдпрд╛ рдЗрд╕рдХрд╛ рдЕрднреА рддрдХ рдХреЛрдИ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИ?

рдирдорд╕реНрддреЗ
рдЙрдкрд░реЛрдХреНрдд рд╕рдорд╛рдзрд╛рди рдЖрдпрдирд┐рдХ 2.1.0 рдкрд░ рднреА рдЪрд▓рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдПрдХ рдмреЗрд╣рддрд░ рдкрд░рд┐рдгрд╛рдо [рдЫрд┐рдкрд╛ рд╣реБрдЖ] attrb *ngif.Im рдХреЗ рд╕реНрдерд╛рди рдкрд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдореИрдВ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдЗрд╕ рд╕рдорд╛рдзрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдпрд╣ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ

рдЖрдкрдХрд╛ рджрд┐рди рд╢реБрдн рд╣реЛ

рдКрдкрд░ рдХреБрдЫ Android рдЙрдкрдХрд░рдгреЛрдВ рдкрд░ рдЭрд┐рд▓рдорд┐рд▓рд╛рд╣рдЯ рдХрд╛ рдХрд╛рд░рдг рд╣реЛрдЧрд╛ рдФрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдмреБрд░рд╛ рд╡рд┐рдХрд▓реНрдк рд╣реИред

рдпрд╣ рдХрд╛рдо рдХрд░реЗрдЧрд╛ .. рдЗрд╕реЗ рдЖрдЬрдорд╛рдПрдВ

рд╡рд░ рдореВрд▓рд╣рд╛рдЗрдЯ = document.documentElement.clientHeight;
рд╡рд░ рдУрд░рд┐рдЬрд┐рдирд▓рд╡рд┐рдбреНрде = document.documentElement.clientWidth;
$ (рд╡рд┐рдВрдбреЛ)ред рдЖрдХрд╛рд░ рдмрджрд▓реЗрдВ (рдлрд╝рдВрдХреНрд╢рди() {
// рдирд┐рдпрдВрддреНрд░рдг рдкрд░рд┐рджреГрд╢реНрдп / рдкреЛрд░реНрдЯреНрд░реЗрдЯ рдореЛрдб рд╕реНрд╡рд┐рдЪ
рдЕрдЧрд░ (рджрд╕реНрддрд╛рд╡реЗрдЬрд╝.рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдПрд▓рд┐рдореЗрдВрдЯ.рдХреНрд▓рд╛рдЗрдВрдЯрд╣рд╛рдЗрдЯ == рдореВрд▓рд╡рд┐рдбреНрде &&
document.documentElement.clientWidth == рдореВрд▓ рд╣рд╛рдЗрдЯ) {
рдореВрд▓ рд╣рд╛рдЗрдЯ = рджрд╕реНрддрд╛рд╡реЗрдЬрд╝.рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдПрд▓рд┐рдореЗрдВрдЯ.рдХреНрд▓рд╛рдЗрдВрдЯрд╣рд╛рдЗрдЯ;
рдореВрд▓рд╡рд┐рдбреНрде = рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ред рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдПрд▓рд┐рдореЗрдВрдЯред рдХреНрд▓рд╛рдЗрдВрдЯрд╡рд┐рдбреНрде;
}
// рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдЙрдкрд▓рдмреНрдз рдКрдВрдЪрд╛рдИ рдЫреЛрдЯреА рд╣реИ (рдХреАрдмреЛрд░реНрдб рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ) рдЗрд╕рд▓рд┐рдП рд╣рдо рдкрд╛рдж рд▓реЗрдЦ рдХреЛ рдЫрд┐рдкрд╛рддреЗ рд╣реИрдВред
рдЕрдЧрд░ (рджрд╕реНрддрд╛рд╡реЗрдЬрд╝.рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдПрд▓рд┐рдореЗрдВрдЯ.рдХреНрд▓рд╛рдЗрдВрдЯрд╣рд╛рдЗрдЯ <рдореВрд▓ рд╣рд╛рдЗрдЯ) {
$('.footer').hide();
} рдЕрдиреНрдпрдерд╛ {
$('.footer').show();
}
});

рдЗрд╕ рддрд░рд╣ рдореИрдВрдиреЗ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рд╣рд▓ рдХрд┐рдпрд╛:

tab.ts

import { Component, ElementRef, Renderer, ViewChild } from '@angular/core';
import { Events, Tabs } from 'ionic-angular';

import { AboutPage } from '../about/about';
import { ContactPage } from '../contact/contact';
import { HomePage } from '../home/home';

@Component({
  templateUrl: 'tabs.html'
})
export class TabsPage {
  @ViewChild('myTabs') tabRef: Tabs;
  mb: any;
  tab1Root = HomePage;
  tab2Root = AboutPage;
  tab3Root = ContactPage;

  constructor(private elementRef: ElementRef, private renderer: Renderer, private event: Events) {

  }
  ionViewDidLoad() {
    let tabs = this.queryElement(this.elementRef.nativeElement, '.tabbar');
    this.event.subscribe('hideTabs', () => {
      this.renderer.setElementStyle(tabs, 'display', 'none');
      let SelectTab = this.tabRef.getSelected()._elementRef.nativeElement;
      let content = this.queryElement(SelectTab, '.scroll-content');
      this.mb = content.style['margin-bottom'];
      this.renderer.setElementStyle(content, 'margin-bottom', '0')
    });
    this.event.subscribe('showTabs', () => {
      this.renderer.setElementStyle(tabs, 'display', '');
      let SelectTab = this.tabRef.getSelected()._elementRef.nativeElement;
      let content = this.queryElement(SelectTab, '.scroll-content');
      this.renderer.setElementStyle(content, 'margin-bottom', this.mb)
    })
  }
  queryElement(elem: HTMLElement, q: string): HTMLElement {
    return <HTMLElement>elem.querySelector(q);
  }
}

рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреГрд╖реНрда.ts

import { Component } from '@angular/core';
import { NavController, Events } from 'ionic-angular';

import { Keyboard } from '@ionic-native/keyboard';

@Component({
  selector: 'page-home',
  templateUrl: 'home.html'
})
export class HomePage {

  constructor(public navCtrl: NavController, private event: Events, private keyboard: Keyboard) {

  }
  ionViewDidLoad() {
    this.keyboard.onKeyboardShow().subscribe(() => this.event.publish('hideTabs'));
    this.keyboard.onKeyboardHide().subscribe(() => this.event.publish('showTabs'));
  }
}

dPary рдХреЛ рд╢реНрд░реЗрдп

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

рд╣рд╛рдБ, рдореИрдВ @cozzbie рдХреЗ рд╕рд╛рде рд╣реВрдБ рдпрд╣ рд╕рдм рдХреБрдЫ рд╣реИрдХ рд╣реИрдВред рд╣рдореЗрдВ @ionitron @manucorp рдЯреАрдо рджреНрд╡рд╛рд░рд╛ рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕рдорд╛рдзрд╛рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ

+1 рд╣рдореЗрдВ рдПрдХ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕рдорд╛рдзрд╛рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЗрдирдореЗрдВ рд╕реЗ рдХреЛрдИ рднреА рд╕реБрдзрд╛рд░ рдЙрддреНрдкрд╛рджрди рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдЖрджрд░реНрд╢ рдирд╣реАрдВ рд╣реИред

рдЖрдпрдирд┐рдХ рдХрд╛ рд╡рд░реНрддрдорд╛рди рд╕рдВрд╕реНрдХрд░рдг рдЗрд╕реЗ рдЕрдкрдиреЗ рдЖрдк рдХрд░рддрд╛ рд╣реИ

21 Nis 2017 17:12 рддрд╛рд░реАрдЦ "рд░реВрдмреЗрди рдХреИрд▓реЗрд╡рд╛рд░реНрдЯ" рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com
рдпрдЬрд╝реНрджреА:

+1 рд╣рдореЗрдВ рдПрдХ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕рдорд╛рдзрд╛рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЗрдирдореЗрдВ рд╕реЗ рдХреЛрдИ рднреА рд╕реБрдзрд╛рд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрджрд░реНрд╢ рдирд╣реАрдВ рд╣реИ
рдЙрддреНрдкрд╛рджрди рдЙрдкрдпреЛрдЧред

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/driftyco/ionic/issues/7047#issuecomment-296201358 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AVskkCpgFZZRbrd56ILc5nIPZICRTclUks5ryLlCgaJpZM4I-H1S
.

рдХреНрдпрд╛ рд╡рд╛рдХрдИ рдЗрд╕ рдмрд╛рдд рдХрд╛ рдЦреНрдпрд╛рд▓ рд░рдЦрд╛ рдЧрдпрд╛ рд╣реИред рдореБрдЭреЗ рдЕрднреА рднреА рдЯреИрдм рдмрд╛рд░ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИред рдЗрд╕ рд▓реЗрдЦрди рдХреЗ рд░реВрдк рдореЗрдВ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдЪрд▓ рд░рд╣рд╛ рд╣реИ рдЖрдпрдирд┐рдХ-рдХреЛрдгреАрдп 3.2.0ред

рдпрд╣ 2.xx рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рдерд╛ рд▓реЗрдХрд┐рди рдЕрдм рдореИрдВрдиреЗ 3.xx рд╕рдВрд╕реНрдХрд░рдг рдХреА рдЬрд╛рдВрдЪ рдХреА рд╣реИ
рдХреБрдЫ рдЧрдбрд╝рдмрдбрд╝ рд╣реИред рдпрд╣ рд╕реНрдХреНрд░реАрди рдкрд░ рдЖрдк рдЬреЛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдЙрд╕реЗ рддрдм рддрдХ рдЫреБрдкрд╛рддрд╛ рдирд╣реАрдВ рд╣реИ рдЬрдм рддрдХ
рдХреАрдмреЛрд░реНрдб рдкрд░ рдЯрд╛рдЗрдк рдХрд░рдирд╛ред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рд╣рдордиреЗ рдЕрдиреНрдп рд╕рдорд╛рдзрд╛рди рдвреВрдВрдвреЗ рд╣реИрдВ рдпрд╛ рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдХрд┐рдП рдЧрдП рд╣реИрдВ
рдХрд┐рд╕реА рднреА 2.xx . рдХреЗ рд▓рд┐рдП рдЙрд░ рдЖрдпрдирд┐рдХ рд╕рдВрд╕реНрдХрд░рдг

12 рдордИ 2017 рдК 03:32 tarihinde "vazad28" [email protected] Yazdi:

рдХреНрдпрд╛ рд╡рд╛рдХрдИ рдЗрд╕ рдмрд╛рдд рдХрд╛ рдЦреНрдпрд╛рд▓ рд░рдЦрд╛ рдЧрдпрд╛ рд╣реИред рдореБрдЭреЗ рдЕрднреА рднреА рдЯреИрдм рдмрд╛рд░ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИред рдирд╡реАрдирддрдо рдЪрд▓ рд░рд╣рд╛ рд╣реИ
рдЗрд╕ рд▓реЗрдЦрди рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрд╕реНрдХрд░рдг рдЖрдпрдирд┐рдХ-рдХреЛрдгреАрдп 3.2.0ред

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/driftyco/ionic/issues/7047#issuecomment-300952251 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AVskkNkEdzsMkkrhGW0l9OUW2BKly-PSks5r46ingaJpZM4I-H1S
.

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

рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдлрд┐рдХреНрд╕ рдХреЗ рд▓рд┐рдП +1! " рдбрд┐рд╕реНрдкреНрд▓реЗ: рдХреЛрдИ рдирд╣реАрдВ " рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЕрд╕реНрд╡реАрдХрд╛рд░реНрдп рдЭрд┐рд▓рдорд┐рд▓рд╛рд╣рдЯ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИ, рдФрд░ рдЯреИрдм рдПрдХ рдмрд╛рд░ рдлрд┐рд░ рдЧрд╛рдпрдм рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ ... рд╕реНрдереВрд▓ рдФрд░ рд╣реИрдХреА рджрд┐рдЦрддреЗ рд╣реИрдВред (рдХрд┐рд╕реА рдХреЗ рдкрд╛рд╕ рдХреЛрдИ рд╡рд┐рдЪрд╛рд░ рд╣реИ рдХрд┐ рдЭрд┐рд▓рдорд┐рд▓рд╛рд╣рдЯ рд╕реЗ рдХреИрд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛рдпрд╛ рдЬрд╛рдП? рдЕрдЧрд░ рдпрд╣ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЕрдЪреНрдЫрд╛ рд▓рдЧрддрд╛ рд╣реИ рддреЛ рдореИрдВ рд╣реИрдХ рд╕реЗ рдКрдкрд░ рдирд╣реАрдВ рд╣реВрдВ)

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

@patrickmcd , рдж рд▓реЙрд░реНрдб рдСрдл рдж рдердореНрд╕ рдбрд╛рдЙрди, рдмрд╕ рд╕реЛрдЪ рд░рд╣рд╛ рдерд╛ рдХрд┐ рдХреНрдпрд╛ рдЖрдкрдиреЗ рдЗрд╕ рдЖрджрдд рдХреЛ рдЫреЛрдбрд╝рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ?

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

рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рд╕реАрдПрд╕рдПрд╕ рдХреЗ рд╕рд╛рде рдЯреИрдм рдЫреБрдкрд╛рдиреЗ рд╕реЗ рдХрдИ рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реЛ рд╕рдХрддреА рд╣реИрдВред рдЖрдпреЛрдирд┐рдХ рдХреБрдЫ рдореВрд▓реНрдпреЛрдВ рдХреА рдЧрдгрдирд╛ рдХрд░рддрд╛ рд╣реИ рдЬреИрд╕реЗ рдХрд┐ ion-content рдкрд░ рдорд╛рд░реНрдЬрд┐рди рдФрд░ рдЯреИрдм рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддрд╛ рд╣реИ (рдЬреЛ рдЫрд┐рдкреЗ рд╣реБрдП рд╣реИрдВ)ред

рд╣рдореЗрдВ рд╕рдорд╛рдзрд╛рди рдирд┐рдХрд╛рд▓рдирд╛ рдкрдбрд╝рд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЕрдиреНрдп рдШрдЯрдХреЛрдВ рдХреЗ рд╕рд╛рде рд╕реНрдерд┐рддрд┐ рдирд┐рд░реНрдзрд╛рд░рдг рд╕рдВрдмрдВрдзреА рдХреБрдЫ рд╕рдорд╕реНрдпрд╛рдПрдВ рдЙрддреНрдкрдиреНрди рд╣реБрдИ рд╣реИрдВред

@ рдЦрд╛рд▓рд┐рдж-рдиреЛрд╡рд╛рдл рдореИрдВ рдХреЗрд╡рд▓ рдЙрди рд╕реНрдкреИрдо рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреА рд╕рд░рд╛рд╣рдирд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рдЬреЛ рдЖрдпреЛрдирд┐рдХ рдЯреАрдо рд╕реЗ рджреВрд░ рд╣реИрдВ рдФрд░ рдЗрд╕ рд░реЗрдкреЛ рдХреЗ ~ 2000 рджрд░реНрд╢рдХреЛрдВ рд╕реЗ рджреВрд░ рд╣реИрдВред

@Floyd1256 рдХреА рдЯрд┐рдкреНрдкрдгреА

рдореЗрд░реЗ рдбрд╛рдЙрдирд╡реЛрдЯреНрд╕ рджреВрд╕рд░реЛрдВ рдХреЛ рдЕрдзрд┐рдХ рд╡рд┐рдЪрд╛рд░рд╢реАрд▓ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреА рдУрд░ рдзрдХреЗрд▓рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рд╣реИрдВред рдЯрд┐рдкреНрдкрдгреА рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рд╣рдореЗрдВ рдпрд╛рдж рд░рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рд╣рдо ~2000 рд▓реЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЬрд┐рдирдХрд╛ рд╕рдордп рдХреАрдорддреА рд╣реИ ред рд╣рдореЗрдВ рдЗрд╕ рд╕реНрдерд╛рди рдХреЗ рд╕рд╛рде рдЙрддрдирд╛ рд╕рд╣рдЬ рд╡реНрдпрд╡рд╣рд╛рд░ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрд┐рддрдирд╛ рд╣рдо рджреЛрд╕реНрддреЛрдВ рдХреЗ рд╕рд╛рде рд╡реНрдпрдХреНрддрд┐рдЧрдд IM рдЪреИрдЯ рдХрд░рддреЗ рд╣реИрдВред рд╣рдореЗрдВ рдЦреБрдж рд╕реЗ рдкреВрдЫрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдХреНрдпрд╛ рд╣рдорд╛рд░реА рдЯрд┐рдкреНрдкрдгреА рджреВрд╕рд░реЛрдВ рдХреА рдорджрдж рдХрд░реЗрдЧреА рдпрд╛ рдмрд╛рдзрд┐рдд рдХрд░реЗрдЧреА, рдХреНрдпрд╛ рдпрд╣ рдмрд╛рддрдЪреАрдд рдХреЛ рдЖрдЧреЗ рдмрдврд╝рд╛рддреА рд╣реИ рдпрд╛ рд╕рд┐рд░реНрдл рд╢реЛрд░ рд╣реИ, рдХреНрдпрд╛ рдпрд╣ рдХрд╣рдирд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЬрд░реВрд░реА рд╣реИ рдпрд╛ рдЬреАрдердм рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд╕рд╛рде рдмреЗрд╣рддрд░ рдЖрд╡рд╛рдЬ рдЙрдард╛рдИ рдЬрд╛ рд╕рдХрддреА рд╣реИ, рдФрд░ рдХреНрдпрд╛ рдпрд╣ рд╡рд┐рдХрд╛рд╕ рдХреЛ рдЧрддрд┐ рджреЗрдЧрд╛ рдпрд╛ рдзреАрдорд╛ рдХрд░ рджреЗрдЧрд╛ред

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рд╢рд╛рдЦрд╛ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдХреБрдЫ рдЕрдиреНрдп рд▓реЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдВрдмреЛрдзрд┐рдд рдХрд░ рд░рд╣реА рд╣реИ https://github.com/ionic-team/ionic/tree/keyboard-fixes
рдпрд╣ рдкреНрд░рддрд┐рдмрджреНрдзрддрд╛ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдмрд╣реБрдд рдЖрд╢рд╛рдЬрдирдХ рджрд┐рдЦрддреА рд╣реИ

рдореЗрд░реЗ рдкрд╛рд╕ рдЖрдпрдирд┐рдХ v1 рд╕реЗ рдЕрдзрд┐рдХ рдЬрд╛рдиреЗ рдХрд╛ рд╕рд╛рд╣рд╕ рдирд╣реАрдВ рд╣реИред

рдореИрдВ рдпрд╣ рдкреИрдЪ рдмрдирд╛рддрд╛ рд╣реВрдВ (рдореИрдВрдиреЗ рдкреНрд░рднрд╛рд╡рд┐рдд рджреГрд╢реНрдп рдХреЗ рдирд┐рдпрдВрддреНрд░рдХ рдореЗрдВ рд░рдЦрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рдЗрд╕ рдХреЙрдореНрдмреЛ рдХреЗ рд╕рд╛рде рдХреЗрд╡рд▓ рдПрдХ рд╣реИ)ред

/* рд╣реИрдХ рдЕрд▓ рдореЛрд╕реНрд░рд╛рд░ рдПрд▓ рдЯреЗрдХрд▓рд╛рдбреЛ рдПрд▓ рддрдмреНрдмрд╛рд░ рд╕реЗ рдкреЛрди рдПрдирд┐рдорд╛ рдбреЗ рдПрд▓ рдПрди рдПрдВрдбреНрд░реЙрдЗрдб /рд╡рд░ рдиреАрдЪреЗ_рд╕рдВрдЧреНрд░рд╣реАрдд = 0;window.addEventListener('native.keyboardshow', function (e) {angular.element(document.getElementsByClassName('tab-nav')).addClass('hide');bottom_stored = angular.element(document.getElementsByClassName('has-tabs')).css('bottom');angular.element(document.getElementsByClassName('has-tabs')).css('bottom','0px');$ рдЧреБрдВрдЬрд╛рдЗрд╢ред $ рд▓рд╛рдЧреВ ();});window.addEventListener('native.keyboardhide', function (e) {angular.element(document.getElementsByClassName('tab-nav')).removeClass('hide');angular.element(document.getElementsByClassName('has-tabs')).css('bottom',bottom_stored);$ рдЧреБрдВрдЬрд╛рдЗрд╢ред $ рд▓рд╛рдЧреВ ();});/ рд╣реИрдХ */

рдпрд╣ рд╕рд╣реА рд╣реИ

рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдпрд╣ рдХреЗрд╡рд▓ рддрдм рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдореИрдВ рдПрдВрдбреНрд░реЙрдЗрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди config.xml рдореЗрдВ рдПрдВрдбреНрд░реЙрдЗрдб рдЯреИрдЧ рдкрд░ рдПрдХ рд╕рдВрдкрддреНрддрд┐ рдмрджрд▓рдирд╛ рд╣реИ

<platform name="android"> <edit-config file="AndroidManifest.xml" mode="merge" target="/manifest/application/activity"> <activity android:windowSoftInputMode="adjustPan" /> </edit-config>

рдмрд╕ рд╕рд░рд▓ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдЬреЛрдбрд╝реЗрдВ, рдЗрд╕рд▓рд┐рдП AndroidManifest.xml рдореЗрдВ Android рдмрд┐рд▓реНрдб рдореЗрдВ

рдКрдкрд░ рдмрддрд╛рдП рдЧрдП @Jatapiaro рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЙрд░реНрдбреЛрд╡рд╛ рдкреНрд▓рдЧрдЗрди рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рд╣реИ:

cordova plugin add cordova-custom-config

рдлрд┐рд░ рдореИрдВрдиреЗ рдЕрдкрдиреЗ config.xml рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛ рдЬреЛрдбрд╝рд╛ рд╣реИ:

<platform name="android">
    <preference name="android-manifest/application/activity/<strong i="10">@android</strong>:windowSoftInputMode" value="adjustPan" />
    ...
</platform>

Android рдФрд░ iOS рдкрд░ рдХрд╛рдо рдХрд░рдирд╛

рдпрд╣рд╛рдБ рдореИрдВрдиреЗ рдХреАрдмреЛрд░реНрдб рдХреЛ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдЫрд┐рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рдХрд┐рдпрд╛ рд╣реИ:

рдореЗрд░реА рдЯреАрдПрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ:

@ViewChild('foot') foo_ter: ElementRef;
  constructor(private platform: Platform, private keyboard: Keyboard) {
    this.platform.ready().then(() => {
      this.keyboard.onKeyboardShow().subscribe(() => {
        this.foo_ter.nativeElement.hidden = true;
      });
      this.keyboard.onKeyboardHide().subscribe(() => {
        this.foo_ter.nativeElement.hidden = false;
      });
    });
  }

рдлрд┐рд░ рдореЗрд░реА рдПрдЪрдЯреАрдПрдордПрд▓ рдлрд╛рдЗрд▓ рдореЗрдВ, рдореИрдВ #footer рдирд╛рдордХ рдПрдХ рдЯреЗрдореНрдкрд▓реЗрдЯ рд╡реИрд░рд┐рдПрдмрд▓ рдмрдирд╛рддрд╛ рд╣реВрдВ рдЬрд┐рд╕реЗ рдореИрдВ рдЙрдкрд░реЛрдХреНрдд рдЯреАрдПрд╕ рдореЗрдВ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реВрдВ:

<ion-footer no-border style="padding:5%;" #footer>
  <ion-item no-lines>
   Don't have an account?
    <button ion-button style="text-align:center;" bold item-end clear no-lines clear (click)="signup()">
      Sign Up
    </button>
  </ion-item>
</ion-footer>

рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЖрдкрдХреЗ рд▓рд┐рдП рднреА рдХрд╛рдо рдХрд░реЗрдЧрд╛ :-) @ RaymondAtivie

рдореИрдВрдиреЗ рдЗрд╕реЗ Ionic V3 рдореЗрдВ рдЗрд╕ рддрд░рд╣ рджрд┐рдпрд╛ред рдмрд┐рд▓реНрдХреБрд▓ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдЯреАрдПрд╕ рдлрд╝рд╛рдЗрд▓
ionViewDidEnter () {
рдЕрдЧрд░ (this.keyboard.isOpen ())
рдпрд╣.рд╢реЛрдЯреИрдмреНрд╕ = рдЭреВрдард╛;
рдЕрдиреНрдпрдерд╛
this.showTabs = рд╕рдЪ;
}

рдПрдЪрдЯреАрдПрдордПрд▓ рдлрд╝рд╛рдЗрд▓

рджрд╛рд╕рджрд╛

рдПрдПрд╕рдбреА

рд╕рд╣реА рдЙрддреНрддрд░ рдирд╣реАрдВ

рдХреНрдпрд╛ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕рдорд╛рдзрд╛рди рдкрд░ рдХреЛрдИ рдЕрдкрдбреЗрдЯ рд╣реИ?

рдЖрдЬ рддрдХ.. рдЖрдпреЛрдирд┐рдХ v . рдХреЗ рд╕рд╛рде
рдореБрдЭреЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП @ рдЖрдпрдирд┐рдХ-рджреЗрд╢реА/рдХреАрдмреЛрд░реНрдб рдирд╣реАрдВ рдорд┐рд▓рд╛ред рдЬреИрд╕рд╛ рдХрд┐ рдХрдИ рдЕрдиреНрдп рд▓реЛрдЧреЛрдВ рдиреЗ рдХрд╣рд╛ рд╣реИ .. onKeyboardShow() рдШрдЯрдирд╛ рдХрднреА рднреА рдЖрдЧ рдирд╣реАрдВ рд▓рдЧрддреА рд╣реИред
рдХреЙрд░реНрдбреЛрд╡рд╛-рдХреАрдмреЛрд░реНрдб-рдкреНрд▓рдЧрдЗрди рдХреЛ рднреА рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рддреЛ рдореЗрд░реЗ рд▓рд┐рдП рдЬреЛ рдХрд╛рдо рдХрд┐рдпрд╛ рд╡рд╣ рдерд╛ ...
cordova plugin add cordova-plugin-ionic-keyboard --save
рдЗрд╕реЗ рдкреЛрд╕реНрдЯ рдХрд░реЗрдВ .. рдореИрдВрдиреЗ window.addEventListener рдХреЛ рдЙрдирдХреЗ рд░реАрдбрдореА рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдХреЗ рд░реВрдк рдореЗрдВ рдЬреЛрдбрд╝рд╛ рд╣реИ

рдпрджрд┐ рдЖрдк рдЯреИрдм рдкреГрд╖реНрда рдХреЛ рдЫреЛрдбрд╝ рдХрд░ рдлрд┐рд░ рд╕реЗ рдЙрд╕ рдкрд░ рд╡рд╛рдкрд╕ рдЖрддреЗ рд╣реИрдВ рддреЛ рдИрд╡реЗрдВрдЯ рд▓рд┐рд╕реНрдЯрдирд░ рдХреЛ рд╣рдЯрд╛рдирд╛ рди рднреВрд▓реЗрдВред

```` рдЯрд╛рдЗрдкрдкреНрд░рддрд┐
// MyTabs.ts
рд╢реЛ рд▓рд┐рд╕реНрдЯрдирд░ () {
рдХрдВрд╕реЛрд▓.рд▓реЙрдЧ ('рдХреАрдмреЛрд░реНрдб рджреГрд╢реНрдпрдорд╛рди');
document.body.classList.add('keyboard-is-open');
}
рдЫреБрдкрд╛рдПрдВ рд▓рд┐рд╕реНрдЯрдирд░ () {
рдХрдВрд╕реЛрд▓.рд▓реЙрдЧ ('рдХреАрдмреЛрд░реНрдб рдЫреБрдкрд╛рддрд╛ рд╣реИ');
document.body.classList.remove('keyboard-is-open');
}

ionViewDidEnter () {
window.addEventListener('keyboardWillShow', this.showListener);
window.addEventListener('keyboardDidHide', this.hideListener);
}

ionViewWillLeave () {
window.removeEventListener('keyboardWillShow', this.showListener);
window.removeEventListener('keyboardDidHide', this.hideListener);
}
````

рдкрд╣рд▓реЗ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд┐рдпрд╛ред рдЬрдм рдореИрдВ рдкрд╣рд▓реА рдмрд╛рд░ рдЗрдирдкреБрдЯ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддрд╛ рд╣реВрдВ рдЬрдм рдХреАрдмреЛрд░реНрдб рджрд┐рдЦрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдЯреИрдмрдмрд╛рд░ рдЫреБрдкрд╛ рд╣реБрдЖ рдерд╛ред рдПрдХ рдФрд░ рдЗрдирдкреБрдЯ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдЯреИрдмрдмрд╛рд░ рдиреЗ рдлрд┐рд░ рд╕реЗ рджрд┐рдЦрд╛рдпрд╛ рд╣реИред рддреЛ рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдЬрдм рдореИрдВ рдкрд╣рд▓реА рдмрд╛рд░ рдЗрдирдкреБрдЯ рдлрд╝реАрд▓реНрдб рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддрд╛ рд╣реВрдВ рддреЛ рдЯреИрдмрдмрд╛рд░ рдХреЗрд╡рд▓ рдЫреБрдкрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдХрд┐рд╕реА рднреА рд╕реБрдЭрд╛рд╡? @рдзрд░рдкрд╡рдЬ

рд╣реЗ рд╕рдм рд▓реЛрдЧ, рдЬрдмрдХрд┐ рдпрд╣ рдЯреИрдм рдмрд╛рд░ рдХреЛ "рдЫрд┐рдкрд╛рдиреЗ" рдЬреИрд╕рд╛ рдирд╣реАрдВ рд╣реИ, рдЗрд╕ рд╕рдорд╛рдзрд╛рди рдиреЗ рдХреАрдмреЛрд░реНрдб рдХреЛ рдЯреИрдм рдмрд╛рд░ рдХреЛ рдКрдкрд░ рдзрдХреЗрд▓рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдЕрд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдХрд░ рдореЗрд░реЗ рд▓рд┐рдП рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд┐рдпрд╛ред

рдЕрдкрдиреЗ рдореБрдЦреНрдп config.xml рдореЗрдВ, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдВрдбреНрд░реЙрдЗрдб рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ:

    <platform name="android">
        ...
        <edit-config file="AndroidManifest.xml" mode="merge" target="/manifest/application/activity">
            <activity android:windowSoftInputMode="adjustPan" />
        </edit-config>
    </platform>

рдпрд╣ рдЖрдкрдХреЗ рдРрдк рдХреЗ рд▓рд┐рдП рд╡реИрд╢реНрд╡рд┐рдХ рдХреАрдмреЛрд░реНрдб рдЗрдирдкреБрдЯ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЙрд░реНрдбреЛрд╡рд╛ рджреНрд╡рд╛рд░рд╛ рдЖрдкрдХреЗ AndroidManifest.xml рдХреЛ рд▓рд┐рдЦреЗ рдЧрдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рддрд╛ рд╣реИред

... рдФрд░ рдпрджрд┐ рдЖрдк рдЕрдкрдиреЗ рдЕрдЧрд▓реЗ рдирд┐рд░реНрдорд╛рдг рдкрд░ AndroidManifest.xml рдХреА рдЬрд╛рдВрдЪ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдЖрдк рджреЗрдЦреЗрдВрдЧреЗ рдХрд┐ android:windowSoftInputMode= "adjustResize" рдХрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ "adjustPan" рдореЗрдВ рдмрджрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдЯреИрдм рдмрд╛рд░ рдХреЛ рдЕрд╕реНрдкрд╖реНрдЯ рд╣реЛрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдорд┐рд▓рддреА рд╣реИред

@codymbeardsley рдмрд╣реБрдд рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж! рдпрд╣ рд╕рдорд╛рдзрд╛рди рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ; рдХрдо рд╕реЗ рдХрдо рдПрдВрдбреНрд░реЙрдЗрдб рдХреЗ рд▓рд┐рдП рдпрд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди рд╣реИред рдЬрдм рдХреАрдмреЛрд░реНрдб рдЦреБрд▓рд╛ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдЯреВрд▓рдмрд╛рд░ рдХреЛ рдкрд╛рдж рд▓реЗрдЦ рдХреЛ рдЫрд┐рдкрд╛ рджреЗрддрд╛ рд╣реИ !

38433253_2249424885084611_5542912714352885760_n
38404571_2249424851751281_3916148672231899136_n

рдмрд┐рд▓реНрдХреБрд▓ рд╕рд╣реА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ!
рдзрдиреНрдпрд╡рд╛рдж @codymbeardsley

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

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

GeorgeAnanthSoosai picture GeorgeAnanthSoosai  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

SebastianGiro picture SebastianGiro  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Macstyg picture Macstyg  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

daveshirman picture daveshirman  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

gio82 picture gio82  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ