Exemplo n.º 1
0
        public static void SelectTab(int selectedTab)
        {
            Instance.m_selectedTab = selectedTab;
            Instance.SelectedIndex = Instance.m_selectedTab;

            m_activeTab = m_tabs[selectedTab];
            for (int i = 0; i < m_tabs.Count; i++)
            {
                m_tabs[i].ShowTab(i == selectedTab);
            }
        }
Exemplo n.º 2
0
        public static void AddTab(string text, string selectedImageName, string notSelectedImageName = null)
        {
            var selImage = UtilsiOS.LoadImage(selectedImageName);

            if (selImage == null)
            {
                throw new ArgumentException("Image [" + selectedImageName + "] not found.");
            }
            selImage = selImage.ImageWithRenderingMode(UIImageRenderingMode.AlwaysOriginal);

            UIViewController tab = new UIViewController();

            tab.Title = text;
            tab.TabBarItem.SelectedImage = selImage;
            tab.TabBarItem.Image         = selImage;

            if (notSelectedImageName != null)
            {
                var image = UtilsiOS.LoadImage(notSelectedImageName);
                if (image == null)
                {
                    throw new ArgumentException("Image [" + notSelectedImageName + "] not found.");
                }
                image = image.ImageWithRenderingMode(UIImageRenderingMode.AlwaysOriginal);
                tab.TabBarItem.Image = image;
            }

            List <UIViewController> controllers = Instance.ViewControllers == null ?
                                                  new List <UIViewController>() :
                                                  new List <UIViewController>(Instance.ViewControllers);

            controllers.Add(tab);
            Instance.ViewControllers = controllers.ToArray();

            m_activeTab = new iOSTab(tab, text);
            m_tabs.Add(m_activeTab);
            if (controllers.Count == 1)
            {
                // Lift the tabbar back up:
                Instance.OffsetTabBar();
            }

            m_allTabs[text] = m_tabs.Count - 1;
            SelectTab(m_tabs.Count - 1);
        }