• UITabBarItem如何更改高度


       

    本文转载至 http://www.cocoachina.com/bbs/read.php?tid=255361 

     

     

    我目前有个UITabBar,改了它的高度。但是我切换页签后,这个UITabBar样式又变掉了。我感觉是UITabBarItem的高度把整个页签高度撑开了。

     

    不知道如何修改UITabBarItem,最好是能去掉文字占用的空间,因为我只要图片,不要文字的。能不能把文字移除。

     

     

     

    回复

    引用

    举报顶端

     

    major李小木

     

     

    级别: 新手上路

     

     

    状态: 未签到 - [3天]

    UID: 292674

    精华: 0 

    发帖: 25

    可可豆: 108 CB

    威望: 100 点

    在线时间: 300(时)

    注册时间: 2014-02-16

    最后登录: 2015-04-01

     

    沙发 :

    发表于: 2014-04-11 09:58

       发自: Web Page

    只看该作者   小 中 大

     

     

     

     

    如果不是系统样式的tabbar,建议你还是自定义一个tabbar

     

     

     

    给你一个自定义tabbar的demo,希望可以帮到你

     

     

     

    #import "MainTabBarController.h"

     

    #import "HomePageViewController.h"

     

    #import "ScanningViewController.h"

     

    #import "NearbyViewController.h"

     

    #import "RemindViewController.h"

     

     

     

    #import "DeviceManager.h"

     

     

     

     

     

    @interface MainTabBarController ()

     

    {

     

        UIView * _tabBarView;

     

    }

     

    @end

     

     

     

    @implementation MainTabBarController

     

     

     

    - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil

     

    {

     

        self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];

     

        if (self) {

     

     

     

        }

     

        return self;

     

    }

     

     

     

    - (void)viewDidLoad

     

    {

     

        [super viewDidLoad];

     

        

     

        [self creatCustomTabBarView];

     

    [self creatControllers];

     

     

     

    }

     

     

     

    #define NormalImages [NSArray arrayWithObjects:@"底部首页按钮",@"底部扫描按钮",@"底部附近按钮",@"底部提醒按钮", nil]

     

    #define SelectedImages [NSArray arrayWithObjects:@"底部首页按钮高亮",@"底部扫描按钮高亮",@"底部附近按钮高亮",@"底部提醒按钮高亮", nil]

     

    -(void)creatCustomTabBarView{

     

        self.tabBar.hidden = YES;

     

        

     

        _tabBarView = [[UIView alloc] initWithFrame:CGRectMake(0, [DeviceManager currentDeviceScreenHeight] - 44, 320, 44)];

     

        for (int i = 0; i< 4; i++) {

     

            UIButton * button = [UIButton buttonWithType:UIButtonTypeCustom];

     

            if (i == 0) {

     

                [button setBackgroundImage:[UIImage imageNamed:[SelectedImages objectAtIndex:i]] forState:UIControlStateNormal];

     

            }else{

     

                [button setBackgroundImage:[UIImage imageNamed:[NormalImages objectAtIndex:i]] forState:UIControlStateNormal];

     

            }

     

            [button setFrame:CGRectMake(0+80*i, 0, 80, 44)];

     

            button.tag = 100 + i;

     

            [button addTarget:self action:@selector(clickedButton:) forControlEvents:UIControlEventTouchDown];

     

            [_tabBarView addSubview:button];

     

        }

     

        [self.view addSubview:_tabBarView];

     

    }

     

     

     

     

     

    -(void)creatControllers{

     

        HomePageViewController * hpVC = [[HomePageViewController alloc] init];

     

        ScanningViewController * sVC = [[ScanningViewController alloc] init];

     

        NearbyViewController * nVC = [[NearbyViewController alloc] init];

     

        RemindViewController * rVC = [[RemindViewController alloc] init];

     

        NSArray * viewControllers = [NSArray arrayWithObjects:hpVC,sVC,nVC,rVC, nil];

     

        NSMutableArray * controllers = [[NSMutableArray alloc] init];

     

        for (int i = 0; i< 4; i++) {

     

            UINavigationController * nav = [[UINavigationController alloc] initWithRootViewController:[viewControllers objectAtIndex:i]];

     

            [controllers addObject:nav];

     

        }

     

        self.viewControllers = controllers;

     

    }

     

     

     

     

     

     

     

    -(void)clickedButton:(UIButton *)button{

     

        for (int i = 0; i< 4; i++) {

     

            UIButton * btn = (UIButton *)[_tabBarView viewWithTag:(100 + i)];

     

            if (button.tag%100 == i) {

     

                [btn setBackgroundImage:[UIImage imageNamed:[SelectedImages objectAtIndex:i]] forState:UIControlStateNormal];

     

                self.selectedIndex = i;

     

            }else{

     

                [btn setBackgroundImage:[UIImage imageNamed:[NormalImages objectAtIndex:i]] forState:UIControlStateNormal];

     

            }

     

        }

     

    }

     

     

     

     

     

     

     

    - (void)didReceiveMemoryWarning

     

    {

     

        [super didReceiveMemoryWarning];

     

        // Dispose of any resources that can be recreated.

     

    @end

  • 相关阅读:
    SQL Server IF Exists 判断数据库对象是否存在的用法
    C# RDLC报表不出现预览窗体直接输出到打印机
    C# 未安装Office环境下使用NPOI导出Excel文件
    C# 键盘中的按键对应KeyValue
    微信小程序下可以使用的MD5以及AES加密(通用)
    SQL Server 根据树状结构表生成以/号分割的路由字符串
    C# Winform下一个热插拔的MIS/MRP/ERP框架16(窗体基类场景2)
    WEB H5 JS QRCode二维码快速自动生成
    C# Winform 小技巧(Datagridview某一列按状态显示不同图片)
    获取请求地址的IP地址
  • 原文地址:https://www.cnblogs.com/Camier-myNiuer/p/4402332.html
Copyright © 2020-2023  润新知