#import "ViewController.h"

#import "FirstViewController.h"
#import "SecondViewController.h"
#import "MiddleViewController.h"
#import "ThirdViewController.h"
#import "FourViewController.h" @interface ViewController ()
{
UIImageView *imageView;
NSArray *imageArray;
}
@end @implementation ViewController - (void)viewDidLoad {
[super viewDidLoad]; imageArray = [NSArray arrayWithObjects:[UIImage imageNamed:@"startImg0"],[UIImage imageNamed:@"startImg1"],[UIImage imageNamed:@"startImg2"],[UIImage imageNamed:@"startImg3"],[UIImage imageNamed:@"startImg4"],[UIImage imageNamed:@"startImg5"],[UIImage imageNamed:@"startImg6"], nil]; FirstViewController *first = [[FirstViewController alloc] init];
first.tabBarItem.title = @"首页";
first.tabBarItem.image = [UIImage imageNamed:@"tabbar_company_home"];
[first.tabBarItem setSelectedImage:[UIImage imageNamed:@"tabbar_company_home_select"]]; SecondViewController *second = [[SecondViewController alloc] init];
second.tabBarItem.title = @"动态";
second.tabBarItem.image = [UIImage imageNamed:@"tabbar_dynamic"];
[second.tabBarItem setSelectedImage:[UIImage imageNamed:@"tabbar_dynamic_selected"]]; MiddleViewController *middle = [[MiddleViewController alloc] init];
[self addCenterButtonWithImage:[UIImage imageNamed:@"middleImage"] highlightImage:nil]; ThirdViewController *third = [[ThirdViewController alloc] init];
third.tabBarItem.title = @"广场";
third.tabBarItem.image = [UIImage imageNamed:@"tabbar_position_oringin"];
[third.tabBarItem setSelectedImage:[UIImage imageNamed:@"tabbar_position_selected"]]; FourViewController *four = [[FourViewController alloc] init];
four.tabBarItem.title = @"我的";
four.tabBarItem.image = [UIImage imageNamed:@"tabbar_mine_oringin"];
[four.tabBarItem setSelectedImage:[UIImage imageNamed:@"tabbar_mine_selected"]]; self.viewControllers = @[first,second,middle,third,four];
} //添加中间按钮
- (void)addCenterButtonWithImage:(UIImage *)buttonImage highlightImage:(UIImage *)highlightImage
{
UIButton* button = [UIButton buttonWithType:UIButtonTypeCustom];
button.autoresizingMask = UIViewAutoresizingFlexibleRightMargin | UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleBottomMargin | UIViewAutoresizingFlexibleTopMargin;
button.frame = CGRectMake(0.0, 0.0, buttonImage.size.width, buttonImage.size.height);
[button addTarget:self action:@selector(buttonClick) forControlEvents:UIControlEventTouchUpInside];
[button setBackgroundImage:buttonImage forState:UIControlStateNormal];
[button setBackgroundImage:highlightImage forState:UIControlStateHighlighted]; CGFloat heightDifference = buttonImage.size.height - self.tabBar.frame.size.height;
if (heightDifference < )
button.center = self.tabBar.center;
else
{
CGPoint center = self.tabBar.center;
center.y = center.y - heightDifference/2.0;
button.center = center;
} [self.view addSubview:button];
} - (void)buttonClick
{
NSLog(@"点击中间按钮"); imageView = [[UIImageView alloc] initWithFrame:CGRectMake(, , self.view.bounds.size.width, self.view.bounds.size.height)];
imageView.animationImages = imageArray;
imageView.animationRepeatCount = ;
imageView.animationDuration = 1.0f;
[imageView startAnimating];
[self.view addSubview:imageView];
}

底部带突出按钮的tabbar的更多相关文章

  1. 新浪微博客户端(8)-添加按钮到TabBar

    在tabBar的中部添加一个发送微博的按钮. DJTabBar.h #import <UIKit/UIKit.h> @class DJTabBar; @protocol DJTabBarD ...

  2. jquery图片滚动仿QQ商城带左右按钮控制焦点图片切换滚动

    jquery图片滚动仿QQ商城带左右按钮控制焦点图片切换滚动 http://www.17sucai.com/pins/demoshow/382

  3. android自定义文本框,后面带清空按钮

    android常见的带清空按钮的文本框,获得焦点时如果有内容则显示,否则不显示 package com.qc.health.weight; import com.qc.health.R; import ...

  4. WPF 带清除按钮的文字框SearchTextBox

    原文:WPF 带清除按钮的文字框SearchTextBox 基于TextBox的带清除按钮的搜索框 样式部分: <!--带清除按钮文字框--> <Style TargetType=& ...

  5. 带清空按钮TextBox的实现(WPF)

    本博文针对人群:WPF新手.博文内容:通过Style制定包含清空Button的TextBox样式模板,通过在Style中引入自定义类的附加属性完成对TextBox的内容清空. <span sty ...

  6. jQuery仿3D旋转木马效果插件(带索引按钮)

    项目中需要用到旋转木马效果,但是我在网上找的插件,基本都是不带按钮或者只是带前后按钮的,而项目要求的是带索引按钮,也就是说有3张图片轮播,对应的要有3个小按钮,点击按钮,对应的图片位于中间位置.于是就 ...

  7. 模拟邮箱输入邮箱地址、收藏标签。input框输入内容后回车,内容显示成小方块并带删除按钮。

    模拟邮箱输入邮箱地址.收藏标签: 文本框输入文字后按回车键或者分号键,输入框中的文字变成小块并带删除按钮和操作. 页面代码: <!DOCTYPE html> <%@ page lan ...

  8. iOS 开源一个高度可定制支持各种动画效果,支持单击双击,小红点,支持自定义不规则按钮的tabbar

    TYTabbarAnimationDemo 业务需求导致需要做一个tabbar,里面的按钮点击带有动画效果,tabbar中间的按钮凸出,凸出部分可以点击,支持badge 小红点等,为此封装了一个高度可 ...

  9. 35.Android之带删除按钮EditText学习

    今天实现Android里自定义带删除功能的EditText,效果如下: 当输入内容时,EditText变为带有一个删除功能按钮的编辑框,如图: 实现代码很简单,直接上代码, 布局文件xml: < ...

随机推荐

  1. NTP POOL PROJECT:全球最大的免费NTP服务集群

    pool.ntp.org项目是一个提供可靠易用的NTP服务的虚拟集群,它作为一个大的NP服务器可以支撑全球数百万客户端使用.该项目允许那些能提供NTP服务的服务器加入到该集群中,截止2012年8月份, ...

  2. Spring Boot—18Redis

    pom.xml <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-ja ...

  3. 如何将钉钉集成到FineReport插件中

    报表服务器 安装钉钉管理插件后,打开报表管理平台,管理系统下会增加钉钉管理节点,钉钉相关的配置管理都将会放在这个节点中去配置: 同时,设置定时任务的最后一步输出设置中,会增加推送钉钉消息: 钉钉企业应 ...

  4. EventBus 3.0源码解析

    现在网上讲解EventBus的文章大多数都是针对2.x版本的,比较老旧,本篇文章希望可以给大家在新版本上面带来帮助. EventBus 是专门为Android设计的用于订阅,发布总线的库,用到这个库的 ...

  5. RESULT_OK,RESULT_CANCELED,RESULT_FIRST_USER

    RESULT_OK是执行结果,有RESULT_OK,RESULT_CANCELED,RESULT_FIRST_USER 在调用系统app时返回时RESULT_CANCELED如字面意思代表取消,RES ...

  6. 怎么打印 sql 语句

    1.添加jar包 <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api< ...

  7. Python 导出导入安装包

    python导出安装包 pip freeze > requirements.txt python导入安装包 pip install -r requirements.txt

  8. 使用 CLI 创建 Azure VM 的自定义映像

    自定义映像类似于应用商店映像,不同的是自定义映像的创建者是你自己. 自定义映像可用于启动配置,例如预加载应用程序.应用程序配置和其他 OS 配置. 在本教程中,你将创建自己的 Azure 虚拟机自定义 ...

  9. How To Change Log Rate Limiting In Linux

    By default in Linux there are a few different mechanisms in place that may rate limit logging. These ...

  10. [翻译] RDVTabBarController

    RDVTabBarController https://github.com/robbdimitrov/RDVTabBarController 效果: Supports iPad and iPhone ...