2015-02-26 7 views
1

Мое приложение содержит вкладку внизу & У меня есть поля ввода на этой странице. Но всякий раз, когда я пытаюсь ввести ввод, открывается клавиатура & Клавиатура нажимает Tabbar вверх. Мне нужно только нажимать часть тела на странице при открытии клавиатуры , а не Tabbar.So, как это сделать? Пожалуйста, помогите.Как скрыть панель вкладок Onsen при каждом открытии клавиатуры?

Мой код:

<ons-tabbar> 
    <ons-tab page="SignIn.html" label="Sign In" icon="fa-sign-in" active="true"> 
    </ons-tab> 
    <ons-tab page="SignUp.html" label="Sign Up" icon="fa-user" > 
    </ons-tab> 
</ons-tabbar> 

ответ

2

TabBar имеет атрибут называется hide-tabs, например,

<ons-tabbar hide-tabs="true"> 
    ... 
</ons-tabbar> 

Вы можете использовать ионную клавиатуры плагин:

https://github.com/driftyco/ionic-plugins-keyboard

ли что-то подобное в контроллере, где вы закачиваемой $ rootScope:

window.addEventListener('native.keyboardshow', function() { 
    $rootScope.hideTabs = true; 
}); 

window.addEventListener('native.keyboardhide', function() { 
    $rootScope.hideTabs = false; 
}); 

И в вашем HTML :

<ons-tabbar hide-tags="{{ $root.hideTabs }}"> 
    <ons-tab page="SignIn.html" label="Sign In" icon="fa-sign-in" active="true"> 
    </ons-tab> 
    <ons-tab page="SignUp.html" label="Sign Up" icon="fa-user" > 
    </ons-tab> 
</ons-tabbar> 

Конечно, если вы не используете AngularJS, вы можете изменить атрибут tabbar в обработчиках событий.

Смежные вопросы