我现在学到可分栏控制器,UITabBarController.我总结了它的层次有,UITabBarController控制并且只有以个UITanBat(他是一个UIIView的子类),UITabBar他有控制着多个UIViewController,而且每个UIViewController在上面添加的着很多的UITabBarItem。

UITabBarItem上又有很多的实例化的方法1.

[UITabBarItem alloc]initWithTabBarSystemItem:<#(UITabBarSystemItem)#> tag:<#(NSInteger)#>他是个系统自带的实例化方法,里面有很多苹果打包的很多tabBar的风格;而主要讲下面两种实例化方法的不同

方法一:这是ios7.0之前的方法,很多视频是讲的是这种方法

[UITabBarItem alloc]initWithTitle:<#(NSString *)#> image:<#(UIImage *)#> tag:<#(NSInteger)#>

但是如果在ios7.0之后 ,Xcode他默认的自定义的图标是灰色的或者是背景是灰色例如:这种图片是系统可以识别的如果是其他的彩色的图片系统就回用灰色覆盖图片,点击后是蓝色的,系统默认点击后是蓝色的,(注点击的图片的渲染颜色是可以变的)

方法二:这个方法是ios8 .0之后用的方法,对上tabbar的图片设置分的有比较细,加入了点击后的图片设置

[UITabBarItem alloc]initWithTitle:<#(NSString *)#> image:<#(UIImage *)#> selectedImage:<#(UIImage *)#>

第一个image:参数是在没有点击的正常情况下得图片的显示,而第二种是在点击后的图片的显示,这是显示的图片是彩色的,我觉得这是在UITabbarItem上一个很大的改进,增加了用户的体验效果,对于新手要注意这种方法,可能视频上的导师没有讲到这个方法的区别

//__________________________________________________________________________

在刚学UIket的UITabBarItem是老是被提醒注意层次,和事实的逻辑,但是在编码的时候总会出一些不注意的常错的例如:

UINavigationController *hoomNavgation=[[UINavigationController alloc]initWithRootViewController:firstView];

UIBarButtonItem *barButton=[[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:nil];
// hoomNavgation.navigationItem.rightBarButtonItem=barButton;

我们经常说,一个上面的那个层次一个UITabBarController只有一个UITabBar,每个视图都是有自己独特的UItabbar的,如果在UITabBarController上设置UITabBarItem,而他又控制的所有的视图,这就使每一个视图上都有相同的UITabBatItem了,所以我们总结我们不能用self.navigationController .navigationItem.rightBarButtonItem=barButton;这种形式。

但是在上面的时候没有在视图的- (void)viewDidLoad 下编写而是在对象下编写就很有可能出现那种形式

》hoomNavgation.navigationItem.rightBarButtonItem=barButton;他可以变向的写成self.navigationController .navigationItem.rightBarButtonItem=barButton;这种形式,还是请新手注意

//_____________________________________________________________________________________

我们会经常忽略的方法: tabBarController.tabBar.selectedImageTintColor = [UIColor brownColor]   虽然这个方法是一个过期的方法,但是还是可以用的,他可以改变点击后的渲染的颜色;

设置程序启动时默认的ViewController视图(设置为3,一共5个ViewController,进来时候显示的视图就是第4个-tabBarViewD,下标从0开始)

tabBarController.selectedIndex = 3;

他可以帮助进行选项和视图的同步的移动

UITabBarItem编写的时候出现得图片显示异常,和有一些比较忽略的方法总结的更多相关文章

  1. Xcode9.2打包图片显示异常解决方案

    链接:https://www.jianshu.com/p/ca0bbb403143來源:简书 在使用Xcode9.2适配iPhone X的过程中遇到了部分图片显示异常(不显示或花掉)的问题.主要分两种 ...

  2. 使用系统UITabbarItem自定义图片显示原本颜色和自定义文字颜色

    ...... ThirdViewController *thirdVC = [[ThirdViewControlleralloc]initWithTitle:@"搜索信息"]; / ...

  3. [Xcode 实际操作]一、博主领进门-(2)第一个工程项目:将导入的图片显示到屏幕上

    目录:[Swift]Xcode实际操作 本文将演示创建第一个工程项目. 在项目导航区,鼠标右键[Assets.xcassets]资源文件夹. 隔壁右侧区域左下角点击[+],打开资源文件管理菜单-> ...

  4. Swift开发教程--怎样自己定义TabBarItem的图片显示

    在做项目的时候,假设使用系统的UITabBarController的时候,底部的tab自己定义图片显示是蓝色和灰色的.这不是我们所想要的效果. 假设想显示自己定义的按下和弹起的图片效果.这个时候就须要 ...

  5. 4.C#WinForm基础图片(显示和隐藏)

    要求: 软件上有一张图片,默认是隐藏的.用户在文本框中输入身份证号(131226198105223452),点击按钮,如果年龄大于18岁,则显示图片. 知识点: 取当前年份,Date Time Now ...

  6. jQuery css3鼠标悬停图片显示遮罩层动画特效

    jQuery css3鼠标悬停图片显示遮罩层动画特效 效果体验:http://hovertree.com/texiao/jquery/39/ 效果图: 源码下载:http://hovertree.co ...

  7. Latex图片显示问题(1)

    用latex编译后,若用dvipdf生成pdf文件,则其中有个eps图的左侧会显示不完全:若是用dvips--pspdf生成pdf文件,图像显示没问题. 这种情况的问题出在,加载 graphicx 宏 ...

  8. WPF 图片显示中的保留字符问题

    在WPF中显示一张图片,本是一件再简单不过的事情.一张图片,一行XAML代码即可. 但是前段时间遇到了一件奇怪的事: 开发机上运行正常的程序,在某些客户机器上却显示不了图片,而且除了这个问题,其它运行 ...

  9. JS控制图片显示的大小(图片等比例缩放)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

随机推荐

  1. Median of Two Sorted Arrays-----LeetCode

    There are two sorted arrays A and B of size m and n respectively. Find the median of the two sorted ...

  2. HDU 2859 Phalanx (dp)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2859 给你一个n*n的矩阵,问你最大的对称度是多少(左下右上为对称线) dp[i][j]表示i行j列元 ...

  3. JS鼠标滚动事件

    -----------------------------//鼠标滚动事件以下是JS临听鼠标滚动事件 并且还考虑到了各浏览器的兼容----------------------------------- ...

  4. 消息系统Kafka介绍 - 董的博客

    1.  概述 Kafka是Linkedin于2010年12月份开源的消息系统,它主要用于处理活跃的流式数据.活跃的流式数据在web网站应用中非常常见,这些数据包括网站的pv.用户访问了什么内容,搜索了 ...

  5. 传统的Ado.net 参数设置:params SqlParameter[] commandParameters

    C#代码  ExecuteReader(string connectionString, CommandType commandType, string commandText, params Sql ...

  6. css 文字超出变 ... 点点点

    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;

  7. XGrid绑定(转)

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Windows.Fo ...

  8. 广州项目实施步骤II_练习配置HaProxy的重定向负载均衡

    CentOS6.4 配置Haproxy   Haproxy下载地址:http://pan.baidu.com/share/link?shareid=1787182295&uk=18290183 ...

  9. Java组各任务工作流程

    1.周枫 A.提供基于SQL SERVER的数据库基本表结构创建脚本,基础数据脚本,按学科(产品)的数据脚本. 2.吴缤 A.提供给周茉的安装包用的项目文件,共三个digital,xylinkWeb和 ...

  10. android 根据SD卡中图片路径读取并显示SD中的图片——源代码

    package com.guo; import java.io.File; import android.app.Activity; import android.graphics.Bitmap; i ...