स्क्रीन के निचले भाग में आयनिक टैब कैसे लगाएं?


97

मैंने एक साधारण आयनिक-टैब बनाया जो स्क्रीन के शीर्ष पर मेरे आइकन दिखाता है। मैंने इसे एक आयनिक-पाद-पट्टी में लपेटने की कोशिश की, ताकि इसे स्क्रीन के निचले भाग में रखा जा सके। जब मैं ऐसा करता हूं तो टैब गायब हो जाते हैं। मुझे जो लुक चाहिए वह मुझे कैसे पूरा करना चाहिए?

<ion-footer-bar>
    <ion-tabs class="tabs-icon-only tabs-stable">
    ...
    </ion-tabs>
</ion-footer-bar>

जवाबों:


175

Ionic ( http://blog.ionic.io/the-final-beta/ ) के बीटा 14 के बाद से , कुछ कॉन्फ़िगर चर हैं जो अब उनके मंच मूल्यों के लिए डिफ़ॉल्ट हैं, जिसका अर्थ है कि वे मंच के अनुसार व्यवहार करने की कोशिश करेंगे कि वे पर बने हैं। टैब के मामले में, iOS के लिए डिफॉल्ट बॉटम पर प्रदर्शित होना है, और एंड्रॉइड शीर्ष पर है।

आप इस तरह से अपने विन्यास समारोह के अंदर, tabs.positionसमारोह में स्थापित करके सभी प्लेटफार्मों के लिए स्थान "हार्ड सेट" कर सकते हैं $ionicConfigProvider:

MyApp.config(['$ionicConfigProvider', function($ionicConfigProvider) {

    $ionicConfigProvider.tabs.position('bottom'); // other values: top

}]);

आप यहां दस्तावेज देख सकते हैं


1
नहीं, यह काम नहीं करता है। ब्राउज़र टैब में सबसे नीचे, एंड्रॉइड पर
टूलकिट

3
@ टूलकिट Android टैब को आयोनिक डॉक्स के अनुसार डिफ़ॉल्ट रूप से शीर्ष पर प्रदान किया जाना चाहिए। Android दिशानिर्देश नीचे स्थित OS डिफ़ॉल्ट क्रियाओं के कारण नीचे की सलाखों का उपयोग करने से बचने के लिए हैं: developer.android.com/design/patterns/pure-android.html
डैनियल रोचेती

@ टूलकिट मैंने पहले ही प्लेटफ़ॉर्म डिफॉल्ट की जानकारी को ठीक करने के लिए उत्तर संपादित कर दिया है। यदि आप इसे कस्टमाइज़ करना चाहते हैं, तो ऊपर दिया गया कोड इसका सही तरीका है। हालाँकि मैं आपको प्लेटफ़ॉर्म की चूक से बचने के लिए सुझाव दूंगा, वे प्लेटफ़ॉर्म दिशानिर्देशों का पालन करते हैं। =)
डैनियल रोशेट्टी

वहाँ एक तरीका है, इस विधि या किसी अन्य का उपयोग कर, नीचे और ऊपर टैब है? मैंने अपने पाद लेख के लिए एक और राज्य बनाने की कोशिश की, लेकिन किसी कारण से, यह स्क्रीन पर रेंडर नहीं कर रहा है, भले ही मैं इसे अपने ब्राउज़र में नेटवर्क टैब में देखता हूं। इस पर कोई विचार? साभार
बिल पोप

65

एंड्रॉइड डिवाइसों के लिए स्क्रीन के निचले भाग में आयनिकफ्रेमवर्क टैब को रखने के लिए बस अपनी ऐप खोलें। जेएस फाइल, और कोणीय.मॉडल के तहत कोड की निम्नलिखित पंक्तियां जोड़ें:

.config(function($ionicConfigProvider) {
    $ionicConfigProvider.tabs.position('bottom');
})

आशा है कि यह मदद करेगा।


स्क्रीन के ऊपर और नीचे दोनों पर टैब कैसे प्राप्त करें?
सैयद दानिश अली

मैं तुम्हें नीचे और शीर्ष पर नजर के लिए अलग टेम्पलेट बना सकते हैं लगता है
अहमद ना।

अरे हाँ। मैं समझ गया। मैं इस आयनिक दुनिया में एक नौसिखिया हूँ।
सैयद दानिश अली

इसे उत्तर के रूप में चिह्नित किया जाना चाहिए। यह सरल और सीधे बात है, आपको मेरा वोट मिला ...
Mbithy Mbithy

एंड्रॉइड टैब को नीचे सेट करते समय यह आपके कोड के अनुसार अच्छी तरह से काम कर रहा है, लेकिन कीबोर्ड को दबाते हुए टैब के साथ-साथ टैब भी दिखा रहा है। क्या कीबोर्ड दबाते समय इसे नीचे की ओर स्थिर करने का कोई विकल्प है।
सुथान एम


7

अपने app.js में रखने से यह काम करता है।

.config(function($ionicConfigProvider) {
    $ionicConfigProvider.tabs.position('bottom');
})

आयोनिक स्वचालित रूप से प्लेटफ़ॉर्म कॉन्फ़िगरेशन को ध्यान में रखता है कि चीजों को समायोजित करने के लिए क्या संक्रमण शैली का उपयोग करना है और क्या टैब आइकन को ऊपर या नीचे दिखाना चाहिए।

उदाहरण के लिए, टैब के मामले में, iOS के लिए डिफ़ॉल्ट नीचे की तरफ प्रदर्शित होता है, और Android शीर्ष पर।

Note1 : ऐसा लगता है कि जब एक मंच iOS या Android नहीं है, तो यह आईओएस के लिए डिफ़ॉल्ट जाएगा

नोट 2 : यदि आप एक डेस्कटॉप ब्राउज़र पर विकसित कर रहे हैं, तो यह iOS डिफ़ॉल्ट कॉन्फिग पर लेने वाला है


5

ऐप में .js फ़ाइल के लिए आपको .config मॉड्यूल में $ ionicConfigProvider को इंजेक्ट करना होगा और $ ionicConfigProvider.tabs.position ('निचला') जोड़ना होगा।

.config(function($stateProvider, $urlRouterProvider,$ionicConfigProvider) {

 $ionicConfigProvider.tabs.position('bottom'); //top

  // Ionic uses AngularUI Router which uses the concept of states
  // Learn more here: https://github.com/angular-ui/ui-router
  // Set up the various states which the app can be in.
  // Each state's controller can be found in controllers.js
  $stateProvider

  // setup an abstract state for the tabs directive
    .state('tab', {
    url: '/tab',
    abstract: true,
    templateUrl: 'templates/tabs.html'
  })
.
.
.
  // if none of the above states are matched, use this as the fallback
  $urlRouterProvider.otherwise('/tab/dash');

});

3

आयनिक 2 में स्क्रीन के नीचे आयनिक टैब कैसे रखें

वर्तमान संस्करण आयनिक 2.0.0-beta.10 के लिए।

App.ts में:

ionicBootstrap(MyApp, [], {
  tabbarPlacement: "bottom"
});

विन्यास देखें

जल्द ही रिलीज होने के लिए आयनिक 2.0.0-beta.11

App.ts में:

ionicBootstrap(MyApp, [], {
  tabsPlacement: "bottom" 
});

कॉन्फ़िग


2

Ionic 2, और Ionic 3+ के लिए अपडेट करें:

टैब बार स्थिति बदलने के लिए आपके पास 2 तरीके हैं:

विधि 1: tabsPlacementउचित का उपयोग करें<ion-tabs>

<ion-tabs  tabsPlacement='bottom' >
    <ion-tab [root]="rootTab" tabTitle="Home"></ion-tab> 
</ion-tabs>

विधि 2: में कॉन्फ़िगर बदलें app.module.ts

@NgModule({
  imports: [
    IonicModule.forRoot(MyApp, {
      tabsPlacement : 'bottom'
    })
  ]
})

डॉक्स देखें


क्या सेगमेंट घटक के लिए दूरस्थ रूप से समान है? मैं इसे सीएसएस कोई चिंता नहीं के साथ नीचे रख सकता हूं, लेकिन शीर्ष पर बटनों को सीमा पर रख रहा हूं, फिर छंटनी करने के लिए बहुत सारे लूप हैं और बजाय हैक महसूस करता है, इसलिए मुझे आश्चर्य है कि अगर कोई आसान समाधान था, लेकिन कोई भी नहीं आया डॉक्स में। वास्तव में, सेगमेंट डॉक बल्कि छोटा है .... आयनिकफ़्रामवर्क
डॉक्स /

स्वयं का उत्तर: ion-segment-button.segment-button { border-top-style: solid; border-bottom-width: 0; }क्या चाल, हालांकि, सीमा-शीर्ष-चौड़ाई के लिए मुझे 2px तत्व के लिए शैली-विशेषता में स्पष्ट रूप से इसे सेट करने के अलावा कोई अन्य सहारा नहीं मिला। कुछ और हमेशा इसे 3px के साथ अधिलेखित कर देता है, यहां तक ​​कि इसे क्रोम में तत्व पर सेट करना और इसके साथ स्टाइल शीट में महत्वपूर्ण यह शीर्ष नहीं लगता है।
योगीबिंबी

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.