- 博客(207)
- 资源 (5)
- 收藏
- 关注
转载 Xcode9 iOS11适配 iPhoneX适配 heightForHeaderInSection、contentInset失效解决 contentInsetAdjustmentBehavior详解
1.iPhoneX基本属性启动图尺寸:1125px × 2436px(即 375pt × 812pt @3x))iphoneX 屏幕高:812.0个点导航栏高度+状态栏高度:88.0个点(导航栏高度仍是44个点,状态栏高度增高为44个点,所以刘海的高度并不是状态栏的高度。状态栏和导航栏平分了头部总的高度)tabbar高度:83.0个点(原是固定49个点,增高
2017-11-24 19:39:40
2179
转载 适配iOS11--contentInsetAdjustmentBehavior
一.bug展示Xcode 升级到 9.0beta版本后,公司中的项目运行到iOS11的设备上出现了一个UI Bug,就像下面这种情况.iOS11 模拟器很显然,tableView有了额外的内边距.代码运行到之前的环境上是没问题的,可用Xcode9一编译,再跑到iOS11上就会出现这么严重的问题...二.问题产生原因先贴一段设置tableV
2017-11-24 19:39:07
1709
转载 解决UITableViewCell中的元素无法触发点击事件
需要在UITableView上面加上手势操作,代码如下:@interface TestViewController () @end@implementation TestViewController { UITableView *contentTableView;}- (void)viewDidLoad{ [super viewDidLoad]; //初始化
2017-11-17 15:45:40
3483
转载 IOS CoreText --- 支持图片及链接的点击
1. 为了支持链接效果,与上节同样的道理,先修改数据结构,增加type为“link”的类别。2. 添加文字的链接效果,为了支持展示图片显示,上一节中定义了CoreTextImageData类,同样的道理,我们这里定义一个CoreTextLinkData类。[objc] view plain copy@interface C
2017-10-24 14:45:28
511
转载 IOS CoreText系列四:图文混排之点击事件
基于-(void)touchesBegan:(NSSet )touches withEvent:(UIEvent )event这个方法拿到当前点击到的点,然后通过坐标判断这个点是否在某段文字上,如果在则触发对应事件。1、首先需要执行touchesBegan这个方法来做相应的判断[objc] view plain copy- (void
2017-10-24 14:44:24
762
转载 IOS CoreText系列三:图文混排
#import @interface HSCoreTextView : UIView @end .m文件[objc] view plain copy#import "HSCoreTextView.h" #import @implementation HSCoreText
2017-10-24 14:41:48
401
转载 IOS CoreText系列二:简单使用
[objc] view plain copy/* 通常处理步聚: 1.使用core text就是先有一个要显示的string,然后定义这个string每个部分的样式->attributedString -> 生成 CTFramesetter -> 得到CTFrame -> 绘制(CTFrameDraw) 其中可以更详细的设置换行方式,对齐方
2017-10-24 14:40:29
450
转载 IOS CoreText系列一:理论
前言:本文只是介绍CoreText的一些基本东西,具体的大家可以看Core Text | Apple Developer Documentation.CoreText 框架中最常用的几个类:CTFontCTFontCollectionCTFontDescriptorCTFrameCTFramesetterCTGlyphInfoCTLineCTParagraphStyleCT
2017-10-24 14:39:16
469
转载 iOS app配置多环境变量和制作马甲包
需求一:很多公司的app都分成debug环境和release环境(多个接口域名),平时开发和测试都在debug环境,打包上线的时候才切换到release环境;需求二:公司要求制作马甲包,即在原来app的基础上,只修改app的名称,图标,LaunchImage,替换app中带有app名称的文本,并用另一个开发者账号发布,马甲包的数量不定。手动在代码里更改环境变量,替换图片肯定是不可取的,这里我们采用
2017-10-08 16:43:23
3105
转载 航班数据分析实战
一、实验介绍图片来自pexels.com1.1 实验内容“我们很抱歉地通知您,您乘坐的由XX飞往XX的XXXX航班延误。”相信很多在机场等待飞行的旅客都不愿意听到这句话。随着乘坐飞机这种交通方式的逐渐普及,航延延误问题也一直困扰着我们。航班延误通常会造成两种结果,一种是航班取消,另一种是航班晚点。在本课程中,我们将通过 Spark 提供的 Dat
2017-09-12 09:33:26
9928
1
转载 什么是脏读,不可重复读,幻读
1. 脏读 :脏读就是指当一个事务正在访问数据,并且对数据进行了修改,而这种修改还没有提交到数据库中,这时,另外一个事务也访问这个数据,然后使用了这个数据。2. 不可重复读 :是指在一个事务内,多次读同一数据。在这个事务还没有结束时,另外一个事务也访问该同一数据。那么,在第一个事务中的两 次读数据之间,由于第二个事务的修改,那么第一个事务两次读到的的数据可能是不一样的。这样就发生了
2017-08-31 09:38:37
380
转载 解决CentOS7下yum install mysql-server没有可用包的问题
[azq@localhost ~]$ sudo yum install mysql-server已加载插件:fastestmirror, langpacksLoading mirror speeds from cached hostfile * base: mirrors.163.com * extras: mirrors.163.com * updates: centos.u
2017-08-30 10:04:26
3868
转载 Hive配置与操作实践
安装hivehive的安装十分简单,只需要在一台服务器上部署即可。上传hive安装包,解压缩,将其配入环境变量。mysql的设置在要作为元数据库的mysql服务器上建立hive数据库:#建立数据库create database if not exists hive;#设置远程登录的权限GRANT ALL PRIVILEGES ON *.* TO 'roo
2017-08-26 23:21:10
422
转载 MapReduce:详解Shuffle过程
Shuffle过程是MapReduce的核心,也被称为奇迹发生的地方。要想理解MapReduce, Shuffle是必须要了解的。我看过很多相关的资料,但每次看完都云里雾里的绕着,很难理清大致的逻辑,反而越搅越混。前段时间在做MapReduce job 性能调优的工作,需要深入代码研究MapReduce的运行机制,这才对Shuffle探了个究竟。考虑到之前我在看相关资料而看不懂时很恼火,所以在这里
2017-08-22 16:06:58
410
转载 hadoop2.5 集群
1.现在的虚拟机集合192.168.137.2 node1192.168.137.3 node2192.168.137.4 node3192.168.137.5 node42.配置ssh免密码登录在node1,2,3,4上都运行下面两行:[plain] view plain copyssh-keygen -t ds
2017-08-20 23:12:47
479
转载 笔记
一、基础篇1.1 JVM1.1.1. Java内存模型,Java内存管理,Java堆和栈,垃圾回收http://www.jcp.org/en/jsr/detail?id=133http://ifeve.com/jmm-faq/1.1.2. 了解JVM各种参数及调优1.1.3. 学习使用Java工具
2017-08-19 17:14:46
1280
原创 CentOS7的yum源中默认好像是没有mysql的
CentOS7的yum源中默认好像是没有MySQL的。为了解决这个问题,我们要先下载mysql的repo源。1. 下载mysql的repo源$ wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm2. 安装mysql-community-release-el7-5.noarch.rpm包$ s
2017-07-13 09:53:17
1427
原创 centos 安装mysql 无法登陆 Tomcat配置HTTPS报错解决方法
mysqladmin -u root password "新密码"mysql -uroot -p
2017-07-03 00:00:53
491
转载 2.7
环境配置: 虚拟机: vmware workstation 12 系统: ubuntu 16.04 LTS(推荐使用原版,不要用kylin) 节点: 192.168.159.132 master 192.168.159
2017-06-24 18:28:31
431
转载 Hadoop 2.7.2 CentOS x64 环境搭建
一、环境配置1.CentOS[root@master hadoop-2.7.2]# cat /etc/redhat-releaseCentOS Linux release 7.1.1503 (Core) [root@master hadoop]# uname -r3.10.0-229.20.1.el7.x86_642.JDK(jdk8u51)[root@master
2017-06-24 18:26:49
1788
原创 eclipse maven 创建web项目
1、开启eclipse,右键new——》other,如下图找到maven project2、选择maven project,显示创建maven项目的窗口,勾选如图所示,Create a simple project3、输入maven项目的基本信息,如下图所示:4、完成maven项目的创建,生成相应的maven项目结果,如下所示,此处有部分结构是项目不
2017-06-15 23:20:13
293
转载 排序算法(九)——八大排序算法总结
八大排序算法的稳定性及复杂度总结如下:选择排序算法准则每种排序算法都各有优缺点。因此,在实用时需根据不同情况适当选用,甚至可以将多种方法结合起来使用。影响排序的因素有很多,平均时间复杂度低的算法并不一定就是最优的。相反,有时平均时间复杂度高的算法可能更适合某些特殊情况。同时,选择算法时还得考虑它的可读性,以利于软件的维护。一般而言,需要考虑的因素
2017-06-07 17:38:50
399
转载 排序算法(八)——基数排序
基本思想基数排序(Radix Sort)是在桶排序的基础上发展而来的,两种排序都是分配排序的高级实现。分配排序(Distributive Sort)的基本思想:排序过程无须比较关键字,而是通过“分配”和“收集”过程来实现排序。它们的时间复杂度可达到线性阶:O(n)。 先来看一下桶排序(Radix Sort)。桶排序也称为箱排序(Bin Sort)
2017-06-07 17:38:06
373
转载 排序算法(七)——堆排序
基本思想堆排序是一种树形选择排序,是对直接选择排序的改进。 首先,我们来看看什么是堆(heap):(1)堆中某个节点的值总是不大于或不小于其父节点的值;(2)堆总是一棵完全二叉树(Complete Binary Tree)。 完全二叉树是由满二叉树(Full Binary Tree)而引出来的。除最后一层无任何子节点外,每一层上的所有结点都有两个子结
2017-06-07 17:37:39
581
转载 排序算法(六)——希尔排序
基本思想希尔排序是基于插入排序的,又叫缩小增量排序。在插入排序中,标记符左边的元素是有序的,右边的是没有排过序的,这个算法取出标记符所指向的数据,存入一个临时变量,接着,在左边有序的数组中找到临时变量应该插入的位置,然后将插入位置之后的元素依次后移一位,最后插入临时变量中的数据。试想,假如有一个很小的数据项在靠近右端的位置上,把这个数据项插入到有序数组中时,将会有大量的中间
2017-06-07 17:37:04
454
转载 排序算法(五)——快速排序
基本思想快速排序也是基于分治算法得。步骤如下:(1)选择一个基准元素,通常选择第一个元素或者最后一个元素;(2)通过一趟排序讲待排序的记录分割成独立的两部分,其中一部分记录的元素值均比基准元素值小。另一部分记录的元素值比基准值大;(3)此时基准元素在其排好序后的正确位置;(4)然后分别对这两部分记录用同样的方法继续进行排序,直到整个序列有序。
2017-06-07 17:36:24
361
转载 排序算法(四)——归并排序与递归
基本思想分析归并排序之前,我们先来了解一下分治算法。分治算法的基本思想是将一个规模为N的问题分解为K个规模较小的子问题,这些子问题相互独立且与原问题性质相同。求出子问题的解,就可得到原问题的解。分治算法的一般步骤:(1)分解,将要解决的问题划分成若干规模较小的同类问题;(2)求解,当子问题划分得足够小时,用较简单的方法解决;(3)合并,按原问题的要求
2017-06-07 17:35:44
650
转载 排序算法(三)——插入排序及改进
插入排序基本思想在要排序的一组数中,假设前面(n-1)[n>=2] 个数已经是排好顺序的,现在要把第n个数找到相应位置并插入,使得这n个数也是排好顺序的。如此反复循环,直到全部排好顺序。java实现[java] view plain copy print?//插入排序 public
2017-06-07 17:34:16
307
转载 排序算法(二)——选择排序及改进
选择排序基本思想冒泡排序中有一个缺点,比如,我们比较第一个数a1与第二个数a2的时候,只要a1比a2大就会交换位置,但是我们并不能确定a2是最小的元素,假如后面还有比它更小的,该元素还会与a2再次进行交换,而且这种交换有可能发生多次才能确定a2的最终位置。选择排序可以避免这种耗费时间的交换操作,从第一个元素开始,扫描整个待排数组,找到最小的元素放之后再与第一个元素交换位
2017-06-07 17:33:04
406
转载 数据结构之红黑树(三)——删除操作
删除一个节点同样有可能改变树的平衡性,而且,删除所造成的不平衡性比插入所造成的平衡性的修正更加复杂。化繁为简是算法分析中一个常用的方法。下面我们将欲删除节点分为三大类:欲删除节点为叶子节点、欲删除节点只有一个子节点和欲删除有两个子节点。而欲删除节点有两种可能的颜色,也需要分别对待。为简化讨论,我们以欲删除节点在左侧的情况为例进行修正,如果欲删除节点在右侧,进行镜像地修正操作
2017-06-07 17:32:27
608
转载 数据结构之红黑树(二)——插入操作
插入或删除操作,都有可能改变红黑树的平衡性,利用颜色变化与旋转这两大法宝就可应对所有情况,将不平衡的红黑树变为平衡的红黑树。在进行颜色变化或旋转的时候,往往要涉及祖孙三代节点:X表示操作的基准节点,P代表X的父节点,G代表X的父节点的父节点。我们先来大体预览一下插入的过程:1、沿着树查找插入点,如果查找过程中发现某个黑色节点的两个子节点都是红色,则执行一次颜色变换(父节点变
2017-06-07 17:31:44
516
转载 排序算法(一)——冒泡排序及改进
排序算法概述所谓排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作。排序算法,就是如何使得记录按照要求排列的方法。排序算法在很多领域得到相当地重视,尤其是在大量数据的处理方面。稳定性:一个排序算法是稳定的,就是当有两个相等记录的关键字R和S,且在原本的列表中R出现在S之前,在排序过的列表中R也将会是在S之前。如果算法是稳定的有什么好处
2017-06-07 17:31:15
546
转载 数据结构之红黑树(一)——基础分析
在二叉树中已经探讨过,如果按照随机顺序插入树节点,绝大多数都会出现不平衡的情况。最坏的情况,插入的数据时有序的,二叉树将会变成链表,插入、删除的效率将会严重地降低下图就是按照数据升序的顺序插入二叉树的情况:红黑树就是一种解决非平衡树的方法,它是增加了某些特点的二叉搜索树为了能较快的时间来搜索一颗树,需要保证树总是平衡的(或者至少大部分是平衡的),就是说对
2017-06-07 17:29:47
320
转载 数据结构之红黑树(一)——基础分析
在二叉树中已经探讨过,如果按照随机顺序插入树节点,绝大多数都会出现不平衡的情况。最坏的情况,插入的数据时有序的,二叉树将会变成链表,插入、删除的效率将会严重地降低下图就是按照数据升序的顺序插入二叉树的情况:红黑树就是一种解决非平衡树的方法,它是增加了某些特点的二叉搜索树为了能较快的时间来搜索一颗树,需要保证树总是平衡的(或者至少大部分是平衡的),就是说对
2017-06-07 17:28:07
285
转载 数据结构之霍夫曼树
计算机里每个字符在没有压缩的文本文件中都由一个字节(如ASCII码)或两个字节(如Unicode码)表示。这些方案中,每个字符需要相同的位数下表列出了字母对应的ASCII码字母 十进制 二进制A 65 01000001B
2017-06-07 17:27:23
756
转载 数据结构之二叉树
通过前面的学习,我们知道,有序数组可以利用二分查找法快速的查找特定的值,时间复杂度为O(log2N),但是插入数据时很慢,时间复杂度为O(N);链表的插入和删除速度都很快,时间复杂度为O(1),但是查找特定值很慢,时间复杂度为O(N)。那么,有没有一种数据结构既能像有序数组那样快速的查找数据,又能像链表那样快速的插入数据呢?树就能满足这种要求。不过依然是以算法的复杂度为代价在编程的世界里,
2017-06-07 17:26:46
403
转载 数据结构之链表
链表是一种插入和删除都比较快的数据结构,缺点是查找比较慢。除非需要频繁的通过下标来随机访问数据,否则在很多使用数组的地方都可以用链表代替在链表中,每个数据项都包含在“链结点”中,一个链结点是某个类的对象。每个链结点对象中都包含一个对下一个链接点的引用,链表本身的对象中有一个字段指向第一个链结点的引用,如下图所示:在数组中,每一项占用一个特定的位置,这个位置可以用
2017-06-07 17:26:08
847
转载 数据结构之队列
栈是“后进先出”(LIFO,Last InFirst Out)的数据结构,与之相反,队列是“先进先出”(FIFO,First InFirst Out)的数据结构队列的作用就像售票口前的人们站成的一排一样:第一个进入队列的人将最先买到票,最后排队的人最后才能买到票在计算机操作系统或网路中,有各种队列在安静地工作着。打印作业在打印队列中等待打印。当敲击键盘时,也有一个存储键盘键入内
2017-06-07 17:25:02
399
转载 数据结构之栈
数组、链表、树等数据结构适用于存储数据库应用中的数据记录,它们常常用于记录那些现实世界的对象和活动的数据,便与数据的访问:插入、删除和查找特定数据项而栈和队列更多的是作为程序员的工具来使用。他们主要作为构思算法的辅助工具,而不是完全的数据存储工具。这些数据结构的生命周期比那些数据库类型的结构要短很多。在程序操作执行期间它们才被创建,通常它们去执行某项特殊的任务,当任务完成后就被销毁
2017-06-07 17:24:33
324
Xversion 1.3.6_www.imacapp.cn.dmg
2020-03-21
Zend_Framework_zh 中文手册
2015-05-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人