UIKit
UIAlertView
- UIAlertView
- 调用创建好对象的[testObject show]的show方法即可弹出UIAlertView
UILabel
- UILabel常见属性
- text:显示文字
- font:字体
- textColor:文字颜色
- textAlignment:文字对其方式
- numberOfLines:文字行数
- lineBreakMode:换行模式
- UILabel属性面板
- Lines:设置为0,就可以自动换行
- Behavior:行为
- enabled:可用的,否则不可用
- Highlighted:高亮的
- Line Breaks
- Truncate~:当label显示不下内容时,省略内容的头部、中间、尾部
- Character wrap:在内容为英文时,换行时直接换行
- word wrap:内容为英文时,换行以单词结尾换行
- Clip:显示不了的内容不会用省略号表示,直接裁剪掉
- Shadow:阴影
- Shadow Offset:阴影偏移量
- Horizontal:水平方向,数值越大往右偏移
- Vertical:竖直方向,数值越大往下偏移
UIImageView
- UIImageView的对象属性
- contentMode:设置显示模式
- UIViewContentModeCenter:居中显示
- contentMode:设置显示模式
- UIImageView的初始化
//该方法没有设置frame,可以通过centre来设置位置,该方法存疑???有待验证
UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"image"]];
UIImage
- UIImage的常见属性
- image:显示的图片(设置图片时,PNG的格式不需要后缀)
- animationImages:显示的动画图片
- animationDuration:动画图片的持续时间
- contentMode:设置图片的内容模式(即属性面板中View->Mode)
- clipsToBounds:沿着边框裁剪,Bool类型,默认为No
- 比如contentMode使用不带Scale属性的时候使用该方法
- UIImage的方法
- 动画类的方法
- 通过UIImage设置动画即将一组动画添加到数组,再将这个数组赋值给UIImage的animationImage属性,接着通过设置animationRepeatCount设置播放次数,通过animationDuration设置播放时长
- 30张图片的数组,设置为1秒,则是1秒三十帧❓ ???存疑
- startAnimating:开始动画
- stopAnimating:结束动画
- 通过UIImage设置动画即将一组动画添加到数组,再将这个数组赋值给UIImage的animationImage属性,接着通过设置animationRepeatCount设置播放次数,通过animationDuration设置播放时长
- imageNamed:通过图片名设置图片
- imageWithContentOfFile:通过文件地址设置图片
- resizableImageWithCapInsets:返回一个被保护的图片,通过UIEdgeInsetsMake()设置,一般情况下为以下设置:
- top:设置为高度的一半
- left:设置为宽度的一半
- bottom:设置为高度的一半减1
- right:设置为宽度的一半减1
- resizableImageWithCapInsets-resizingMode:带有未保护显示方式参数,Tile为平铺,stretch为拉伸,常用的为Tile
- strechableImageWithLeftCapInsets-topCapInsets:返回一个被保护的图片,但right和bottom的保护区域默认为left和top保护区域减1
- 动画类的方法
/*
imageNamed:
1.就算指向它的指针被销毁,该资源也不会被从内存中干掉
2.放到Assets.xcassets的图片,默认就有缓存
3.图片经常使用时用gai该方法
imageWithContentsOfFile
1.指向它的指针被销毁,该资源会被从内存中刚掉
2.图片不经常使用,大批量的图片时使用该方法
*/
//其中[NSBundle mainBundle]可以获取app包的路径
NSString *path = [[NSBundle mainBundle] pathForResource:@"image" ofType:@"png"];
testImageView.image = [UIImage imageWithContentsOfFile:path];
- UIImage的属性面板
- View->Mode:
- 带有Scale有可能被压缩或被拉伸,不带的不会被拉伸和压缩
- 带有
- Scale to fill:带有比例的缩放并填充满控件,完全的压缩或拉伸
- Scale Aspect fit:维持宽高比不变,进行压缩或拉伸
- Scale Aspect fill:维持宽高比不变,fill填充整个控件
- Redraw:重新绘图
- Center:维持原图居中
- Top:维持原图显示图片顶部
- bottom:底部
- left:左边
- right:右边
- 还有左上、左下、右上、右下
- View->Mode:
UIToolBar
- UIToolBar
- UIToolBar通常在键盘的上方或下方,作为工具栏
- UIToolBar可以用来设置毛玻璃效果
//具体代码实现
#import "ViewController.h" @interface ViewController ()
@property (nonatomic,weak) UIImageView *imageView;
@end @implementation ViewController - (void)viewDidLoad {
[super viewDidLoad];
UIImageView *testImageView = [[UIImageView alloc] init];
testImageView.frame = CGRectMake(, , , );
testImageView.image = [UIImage imageNamed:@"image"]; UIToolbar *toolBar = [[UIToolbar alloc] init];
toolBar.frame = testImageView.frame;
[testImageView addSubview:toolBar]; [self.view addSubview:testImageView]; }
@end
UIButton
UIButton
- 既能显示图片,也能显示文字
- 可以自定义随时调整内部图片和文件的位置
- button的图片和文本设置一定要使用setImage和setTitle设置
UIButton的状态
- normal:普通状态,按钮的默认状态,即default
- highlighted:高亮状态,按钮被按下去并且未被松开时候的状态
- disabled:失效状态,不可用状态,即enabled,为NO时,按钮不可以被点击
- selected:布尔类型,是否选中的状态
- e.g.音乐播放器的播放和暂停按键,选中状态即播放,未选中状态即暂停
UIButton的常见属性
- buttonType:只读属性,必须在初始化button时使用,[UIButton buttonWithType:UIButtonTypeCustom]
- frame:位置及尺寸
- backgroundColor:背景颜色
- titleLable:内容Lable,只读属性,获取到button内文字内容的对象
- titleLable.shadowOffset:文字阴影偏移量
- imageView.backgroundColor:图片内容的背景颜色
- contentEdgeInsets:设置内容内边距,通过UIEdgeInsetMake()设置
- imageEdgeInsets:设置图片的内边距
- titleEdgeInsets:设置文本的内边距
UIButton的常见方法
- buttonWithType:类工厂方法,通常选择UIButtonTypeCustom
- setTitle-forState:对应状态设置对应文字
- 如果仅设置了normal状态,所有状态都和normal一样
- setTitleColor-forState:对应状态对应文字颜色
- setTitleShadowColor-forState:对应状态对应文字阴影颜色
- setImage-forState:对应状态对应图片
- setBackgroundColor:设置背景颜色
- setBackgroundImage-forState:对应状态对应背景图片
- addTarget-action-forControlEvent:监听按钮的点击
- addTarget:目标(让谁做事情,让viewController做事情,即使用self)
- action:方法(做什么事情-->方法)书写方式如下:@selector(addGoodsClick)
- Event:事件,比如TouchUpInside
UIButton的属性面板
- Type:样式,类型
- Custom:用户自定义button
- Detail Disclosure:不能更改宽度和高度
- Info Light:与DD同样,用来看info,详细信息的
- Info Dark:与DD同样,属于偏平化后的历史遗留问题
- Add contact:添加内容,比如通讯录添加
- State config:即Button的状态
- Shadow Color:阴影颜色
- Shadow offset:只能设置正值,右走,下走
- Image:内容图片
- Background:背景图片
- View -> Background:常用来设置背景颜色,也可以设置背景图片
- Line Break:内容显示的方式,和UILable一yang样
- Edge:内边距
- content:包括图片和文字
- 尽量只设置正数,负数Xcode会变成卡死状态
- control -> Alignment:设置水平竖直格式
- control -> content:查看各个状态的样式
- Enabled:选中即可以点击,未选中即不能点击
- Highlighted:查看高亮状态属性
- view -> Mode:同UIImage的Mode,但很少用
- Type:样式,类型
UIButton的自定义
- button内的子控件位置
- titleRectForContentRect:更改UILable的位置
- imageRectForContentRect:更改UIImageView的位置
- layoutSubviews:必须继承[super layoutSubview],可以更改UILable和UIImageView的位置
- initWithFrame:设置文本和图片的格式等
- 使用代码创建按钮的时候会调用initWithFrame
- 使用storyboard或者xib创建按钮的时候会调用initWithCoder
- button内的子控件位置
//使用代码创建按钮的时候会调用
- (instancetype)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) { [self setupProperties]; }
return self;
} //使用storyboard或者xib创建按钮的时候会调用
- (instancetype)initWithCoder:(NSCoder *)coder
{
self = [super initWithCoder:coder];
if (self) { [self setupProperties]; }
return self;
} - (void)setupProperties{ //这里可以用来设置一些属性 }
UIScrollView
UIScrollView
UIScrollView的属性
delegate:设置代理,通常设置为控制器,self
contentSize:内容尺寸,即能够滚动的范围,必须设置,CGSize
userInteractionEnabled:是否能响应用户的交互,即拖拽点击类操作
- 默认YES
- 控件和子控件都不能跟用户交互
scrollEnabled:控件是否可以滚动,
- 默认YES
- 设置为NO,依旧可以进行点击监听
- 可滚动尺寸为contentSize减去scrollView的尺寸
clipsToBuounds:超出控件边框自动裁剪,默认为YES
bounces:是否有弹簧效果,默认YES
alwaysBounceHorizontal:水平方向总是可以滚动
alwaysBounceVertical:竖直方向总是可以滚动
- 下拉刷新效果可以使用
showHorizontalScrollIndicator:是否显示水平滚动条
showVertiaclScrollIndicator:是否显示竖直滚动条
contentOffset:设置/获取内容偏移量
- 控制内容初始化显示的位置
- 获取当前用户移动的偏移量
contentInset:设置内边距
- 如音乐播放器显示歌词刚开始第一句歌词显示在中间可以用该属性设置
maximumZoomScale:最大缩放比例
minimumZoomScale:最小缩放比例
pagingEnabled:是否开启分页功能
- 分页标准:以scrollView的尺寸为一页
subviews:子控件数组
- makeObjectPerformSelector:让subviews数组的每一个成员执行某一个方法
- 例如:@selector(removeFromSiperview)每个子控件执行从父控件中移除的这个方法
- makeObjectPerformSelector:让subviews数组的每一个成员执行某一个方法
UIScrollView的方法
- setContentOffset:设置contentOffset的值,即设置偏移量的数值
- setContentOffset-animated:设置偏移量时是否带有动画效果,即从设置前的偏移量滚动到设置后的偏移量是否带有动画效果
UIScrollView的属性面板
- view->show:设置控件的大小
- view->backgroundColor:设置背景颜色
- Scroll Indicators:是否展示滚动条
UIScrollView的注意点
- UIScrollView具备滚动功能
- 必须设置UIScrollView的contentSize
- 不要通过索引subviews的数组来访问子控件
- 若非要通过此方法访问子控件,设置水平竖直的滚动条禁用
- 无法滚动
- 未设置contentSize
- scrollEnabled设置为了NO
- userInteractionEnabled
- 通过代码在viewDidLoad创建的UIScrollView刚开始subviews的数组为nil,显示完毕后才有两个imageView(即在viewDidAppear里)
- scrollView在拖拽完毕后会因为惯性继续移动
- 任何OC对象都能成为scrollView的代理
UIScrollView的代理
- 设置代理:scrollview.delegate = self
- scrollViewWillBeginDragging:即将开始拖拽时候条用的方法
- scrollViewDidScroll:监听scrollView的滚动,scrollView会在滚动时候自动调用
- scrollViewWillEndDragging:即将停止拖拽是自动调用的方法
- scrollViewDidEndDragging-decelerate:停止拖拽后自动调用的方法,
- 可以监听是否停止滚动,要结合DidEndDeceleration方法
- decelerate == NO 说明用户停止拖拽scrollView,并停止滚动scrollView
- decelerate == YES 说明用户停止拖拽scrollView,但因为惯性会继续滚动,减速
- scrollViewDidEndDecelerating:惯性拖动停止后(即减速完毕后)自动调用的方法
- 可以监听是否停止滚动
- viewForZoomingInScrollView:返回需要缩放的子控件
- 需要配合最大最小缩放比例属性使用
- 用户使用捏合收拾时,scrollView是知道的,但是不知道要缩放哪个对象,所以需要用到代理
- scrollViewDidZoom:缩放时自动调用的方法
UIPageControl
- UIPageControl的常见属性
- currentPage:当前页数
- UIPageControl的属性面板
- page:一共多少页
- Tint Color:其他页的颜色
- Current page:当前页的颜色
- numberOfPages:page control的总页数
- alpha:透明度
- hidden:是否隐藏
- hidesForSinglePage:单页是否隐藏
UISegmentedControl
- UISegmentedControl的方法
- addTarget:监听控件的点击
- forControlEvents设置为值改变(UIControlEventValueChanged)
- addTarget:监听控件的点击
UITextField
- UITexField的方法
- addTarget:监听控件的点击
- forControlEvents设置为值改变(UIControlEventEditingxxxx
- addTarget:监听控件的点击
UITextField的代理
- textfield-range-string:当textfield文字改变的时候会调用这个方法,返回布尔值
- 返回NO则不允许文字显示在textfield,YES则反之,控制文字的输入
- string:改变的文字
UITableView
UITableView简介
- UITablesView需要一个数据源(dataSource)来展示数据
- UITableView会向数据源查询一共有多少行数据以及每一行显示什么数据等
- UITableView每一行显示的都是一个UITableViewCell
- 动态cell:显示的数据是由数据源动态控制的
UITableView面板属性
- Table View->Style
- 只读属性
- UITableViewStylePlain:简单样式,即每组紧挨一起
- UITableViewStyleGrouped:分组样式,即每组分开显示
- Table View->Content:选择动静态
- Dynamic Prototype:动态cell
- Static Cells:静态cell
- Table View->Style
UITableView对象的常见属性
- rowHeight:每一行的高度
- 设置为UITableViewAutomaticDimension的时候,配合estimatedRowHeight可以通过添加约束来实现自适应高度的cell
- estimatedRowHeight:设置估算高度
- 任意大于0的值jie皆可
- sectionHeaderHeight:每一组的头部高度
- sectionFooterHeight:每一组的尾部高度
- separatorColor:分隔线的颜色
- separatorStyle:分隔线的风格
- UITableCellSeparatorStyleSingleLine:单行线风格,默认模式
- UITableCellSeparatorStyleSingleEtched:仅支持group样式
- UITableCellSeparatorStyleNone:无风格,即没有分隔线
- tableHeaderView:整张表的头部,可以传入任何继承UIView的控件
- 例如广告展示,图片轮播器
- tableFooterView:整张表的尾部,可以传入任何继承UIView的控件
- 例如查看更多信息按钮
- sectionIndexColor:设置索引条的文字颜色
- sectionIndexBackgroundColor:索引条的背景颜色
- rowHeight:每一行的高度
UITableView对象的方法
- cellForRowAtIndexPath:根据IndexPath获取对应的cell
- 调用该方法时,该方法先要确定cell的宽度和高度,会调用heightForRowAtIndexPath
- reloadData:刷新tableView
- cellForRowAtIndexPath:根据IndexPath获取对应的cell
UITableView的类方法
- dequeueReusabkeCellWithIdentifier:去缓存池中取是否有可循环利用的cell
/**********************Cell的复用********************/
//注意:有if既有else(除了cell==nil的if)
//所有cell都一样的设置写在大括号内 //方式一
//定义复用标识
static NSString *ID = @"testCell";
- (void)viewDidLoad {
[super viewDidLoad];
//根据复用标识注册对应类型的cell
[self.tableView registerClass:[UITableViewCell class] forCellReuseIdentifier:ID];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
//从缓存池中取标识为ID的Cell,如果没有自动创建已注册的cell
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:ID];
//设置数据
cell.textLabel.text = @"testText";
return cell;
}
//方式二
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
//1.定义复用标识
static NSString *ID = @"testCell";
//2.从缓存池中取标识为ID的Cell
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:ID];
//3.如果缓存池中没有标识为ID的Cell,则创建cell
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:ID];
}
//4.设置数据
cell.textLabel.text = @"testText";
return cell;
}
UITableViewDelegate
- 系统自动调用的方法
- tableView-didSelectRowAtIndexPath:当某一行的cell被选中后调用该方法
- indexPath:被选中的组和行数
- tableView-didDeselectRowAtIndexPath:取消选中某一行后调用的方法
- tableView-viewForHeaderInSection:设置各个组的头部控件
- 返回头部控件后,设置的头部标题即失效
- tableView-viewForFooterInSection:设置各个组的尾部控件
- 返回尾部控件后,设置的尾部标题即失效
- tableView-heightForHeaderInSection:设置各个组的头部高度
- tableView-heightForFooterInSection:设置各个组的尾部高度
- tableView-heightForRowAtIndexPath:设置各个行的高度
- tableView-didSelectRowAtIndexPath:当某一行的cell被选中后调用该方法
UITableViewDataSource
凡是遵守UITableViewDataSource协议的OC对象都能成为tableView的数据源
系统自动调用的方法(前三个按照系统调用顺序排列)
- numberOfSectionsInTableView:定义一个tableView有多少组
- tableView-numberOfRowsInSection❗️❗️❗️:必须要实现的方法
- 告诉tableView中每一组有多少行,即多少个Row
- 返回的值是每组Row的数量,
- 有多少组,这个方法至少要被执行多少次
- numberOfRowsInSection:在每一组中Rows的数量
- tableView-cellForRowAtIndexPath❗️❗️❗️:必须要实现的方法
- 告诉每一个Row即每一行显示的内容
- tableView规定每行只能显示UITableViewCell或其子类,所以返回UITableViewCell类型
- IndexPath:通过section和row属性可以确定是哪一行的cell
- tableView-titleForHeaderInSection:设置每一组的组眉-头部标题
- tableView-titleForFooterInSection:设置每一组的组脚-尾部标题
- tableView-sectonIndexTitlesForTableView:设置索引条,返回一个数组
- 索引条与tableView之间是根据数组的位置决定的
NSIndexPath
- NSIndexPath的对象属性
- section:tableView中哪一组
- row:tableView中哪一行
UITableViewCell
UITableViewCell对象的常用属性
- ImageView:图片子控件,默认显示在cell左侧
- textLabel:文字Label子控件,默认显示在cell左侧,图片子控件右侧
- detailTextLablel:详情文字子控件,默认显示在cell右侧,可调整位置,灰色字体
- text:设置文字内容
- textColor:设置文字颜色
- accessoryType:即cell右侧的指示样式
- UITableViewCellAccessoryCheckmark:勾的标识
- UITableViewCellAccessoryDetailButton:详情按钮
- UITableViewCellAccessoryDetailDisclosureButton:详情按钮+箭头指示标识
- UITableViewCellAccessoryDisclosureIndicator:箭头指示标识
- accessoryView:设置cell右侧的UIView子控件
- 优先级大于accessoryType
- 例如传入一个UISwitch,就会在右侧显示一个开关
- selectionStyle:被选中时的样式
- UITableViewCellSelectionStyleBule或Gray或Default:因为扁平化设计需要,iOS7开始都是灰色主题
- UITableViewCellSelectionStyleNone:选中之后无背景色
- backgroundColor:背景颜色
- backgroundView:可以给cell背景传入任何继承自UIView的子控件
- 例如传入一个UIImageView,用一张图片做背景
- 优先级大于backgroundColor
- selectedBackgroundView:被选中时的背景View
- 当selectionStyle设置为None时,设置selectedBackgroundView没有效果
- contentView:容器View
- 方便操作内部控件
- 宽度和cell一样,高度比cell低1
- ImageView,textLabel,detailTextLablel三个都是contentView的子控件
- 内部的子控件是懒加载
UITableViewCell的面板属性
- Accessory:设置cell右侧的样式
- Disciosure Indicator:cell右边有小箭头的样式
- Accessory:设置cell右侧的样式
UITableViewCell的类方法
- alloc:分配地址
- initWithStyle-reuseIdentifier:以某一style创建一个cell,reuseIdentifier是指可复用的标识
- alloc:分配地址
自定义等高Cell
- 1️⃣在initWithStyle中添加子控件,并对子控件进行一些初始化
- 子控件添加到contentView中
- 2️⃣在layoutSubviews设置所有子控件的位置和大写
- layoutSubviews会先确定cell的宽度和高度,即先调用heightForRowAtIndexPath
- layoutSubviews必须写[super layoutSubviews]
- 3️⃣给外界提供一个模型数据,以传递数据
- 重写模型数据的set方法,在set方法中将外界传来的数据设置到内部属性中
自定义不等高cell
- 给模型增加frame数据
- 所有子控件的frame以及cell 的高度
- 重写cellHeight属性的get方法
- 进行判断,若cellHeight为0怎么进行计算;若不为0,直接返回cellheight
- 在控制器中实现heightForRowAtIndexPath方法
- 在方法中返回indexPath位置对应cell的高度
- 给cell传递模型数据
- 基本同等高cell
- 使用AotuLayout给自定义添加约束,若想要让tableviewcell根据设定的约束自动计算高度,需要在viewDidLoad中设置下tableView的属性
- 给模型增加frame数据
//即self-sizing技术
//自动计算tableViewCell的高度
//告诉tableView所有cell的真是高度是自动计算的(根据设置的约束) self.storyTableView.rowHeight = UITableViewAutomaticDimension;
//设置tableViewCell的估算高度,50这个数值是估值,大于0即可
//当刚开始布局cell的时候如果没有估值tableView不知道该如何摆放cell
self.storyTableView.estimatedRowHeight = ;
UIColor
- clearColor:清除颜色
UIFont
- UIFont的类方法
- systemFontOfSize:设置系统字体的大小
UIScreen
- UIScreen的类方法
- mianScreen:取到屏幕
- bounds:主屏幕的bounds,还可以获取屏幕宽度高度等
- mianScreen:取到屏幕
UIKit的更多相关文章
- iOS之UIKit系列教程<一>
前言:博主接触iOS的编程也有一段时间,今天把有关UI控件的一些知识在这里做一些总结. 申明:此系列文章都是使用目前最新版本swift3.0.1进行讲解的,与其他版本可能略有差异. 一,UIKit之设 ...
- Swift - 重写UIKit框架类的init初始化方法(以UITabBarController为例)
原来写了篇文章讲UITabBarController的用法,当时是从UIViewController跳转到UITabBarController页面,代码如下: 1 self.presentViewCo ...
- 自定义UICollectionLayout布局 —— UIKit之学习UICollectionView记录一《瀑布流》
一.思路 思路一:比较每一行所有列的cell的高度,从上到下(也就是从第一行开始),从最短的开始计算,(记录下b的高度和索引,从开始计算,依次类推) 思路二:设置上.下.左.右间距和行间距.列间距及列 ...
- UIKit的外观属性及方法汇总
本文授权转载,作者:楚天舒(简书) 开发中经常会碰到要设置UI的某个生僻的外观属性,虽然在头文件中都能查到,但一是每个控件的头文件比较分散繁杂,二是每个头文件里有太多不用到的方法和属性,所以这里将UI ...
- 响应链和UIKit框架
Event Delivery: The Responder Chain When you design your app, it’s likely that you want to respond t ...
- UIKit框架
在今后的应用程序构建中,会陆续使用各式各样的控件,因此UIKit框架的引入是必不可少的! 一.简介 UIKitk框架提供一系列的Class(类)来建立和管理iPhone OS应用程序的用户界面接口.应 ...
- iOS -初识UIKit
UIKit框架:UI界面上每一个元素都是一个对象 一张图片是UIimageView对象 一段文字是一个UILabei对象 一个按钮是一个UIButton对象 搭建UI界面的步骤 利用类创建对象 将对象 ...
- UIDynamicAnimator UIKit动力学
也许是工作上并没有这方面的需要,对UIDynamicAnimator的了解不多.这里做简单的介绍: UIKit动力学是模拟真实世界的一些特性,主要就是UIDynamicAnimator类,通过类中的不 ...
- UIkit – 轻量级前端框架,帮助你快速构建 Web 界面
UIKit 是一个轻量级,模块化的前端框架,用于构建快速和强大的 Web 界面.UIKit 为您提供了 HTML,CSS 和 JavaScirpt 组件,使用简单,容易定制和扩展.UIKit 基于 L ...
- WWDC 2013 Session笔记 - UIKit Dynamics入门
本文涉及到的WWDC2013 Session有 1.Session 206 Getting Started with UIKit Dynamics 2.Session 221 Advanced Tec ...
随机推荐
- dapper 扩展插件: Rainbow
dapper 扩展插件: Rainbow dapper 是一个效率非常高的orm 框架 ,效率要远远大于 我们大微软的EF . 它只有一个类文件,非常之小. 1,首先下载dapper 这里下 ...
- GNU 项目(开源社区的由来,背后的哲学)
转自译言网:http://article.yeeyan.org/view/88497/59257/ 第一个软件共享社区 当我在1971年开始在麻省理工人工智能实验室工作时, 我成为一个已经存在多年的软 ...
- iOS关于应用内分享
iOS7.0增加了AirDrop功能,可知在未来,手机信息资源的直接分享会越来越重要.而我们在iPhone系统短信点击照片会看到右上角的分享按钮,点击可以弹出一系列的应用菜单,允许用户把这张图片分享到 ...
- Unity3d物体模型(实现旋转缩放平移自动旋转)
基本功能实现:物体通过鼠标左键上下移动,中间键缩放.右键旋转,30秒没操作,物体自动旋转 实例代码: using UnityEngine; using System.Collections; publ ...
- 向输出到console的文字加样式
Chrome 控制台新玩法-向输出到console的文字加样式 有兴趣的同学可以文章最后的代码复制贴到控制台玩玩. Go for Code 在正常模式下,一般只能向console 控制台输出简单的 ...
- Python Redis 数据复制.
1 > 下载Python操作Redis的客户端 https://pypi.python.org/pypi/redis/2.7.6 下载完成后,参考该网站相关命令,执行安装. 2 > 下载 ...
- 百度地图定位SDK 之构想
百度地图定位 前提 从香港旅游回来,心中油然升起一股热血滂湃,激励自己发现市场需求,向创业奋进,朝着梦想前进. 简介 百度Android定位SDK支持Android1.5以及以上设备,提供: 定位功能 ...
- 【c++】指针参数是如何传递内存的
[c++]指针参数是如何传递内存的 如果函数的参数是一个指针,不要指望用该指针去动态申请内存.如下: void GetMemory(char *p, int num) { p = (char *) ...
- HDU 1880 字符串hash 入门题
Problem Description 哈利波特在魔法学校的必修课之一就是学习魔咒.据说魔法世界有100000种不同的魔咒,哈利很难全部记住,但是为了对抗强敌,他必须在危急时刻能够调用任何一个需要的魔 ...
- building android/ubuntu-touch on 32bit machine
host C: libhost <= build/libs/host/CopyFile.c host StaticLib: libhost (/media/linux/1/touch/expor ...