iOS项目打包为ipa的两种方式: 准备工作:先行在Xcode里面打开preferences,填写apple id. 通过iTunes+Xcode 在Xcode里,把模拟器调整为iOS Device,然后编译一下,发现XXX.app变黑,然后右键show in Finder. 把XXX.app拖给iTunes即可. 2.对iTunes里面的应用右键Finder显示即可看见一个生成的ipa 通过Xcode的archive: 1. 2. 3. 4. 5. 生成p12:…
在Android开发中ViewPager的使用是非常广泛的,而它不仅仅能够实现简单的开始引导页,还可以结合Fragment并添加Tab作为选项卡或为显示大批量页面实现强大的顺畅滑动 下面介绍两种为ViewPager+Fragment添加Tab的方式: 第一种: 在MainActivity布局中定义一个ViewPager 在MainActivity中声明ViewPager并实现它的Adapter继承自FragmentPagerAdapter 首先需要通过重写有参的构造方法来获取FragmentMa…
Apple官方文档对于加载image提供了两个方法 + (nullable UIImage *)imageNamed:(NSString *)name; + (nullable UIImage *)imageWithContentsOfFile:(NSString *)path; 那么这两个方法对于加载图片有什么区别呢,下面我们用序列帧动画来演示这两个方法的区别: 这个程序一共加载了三组序列帧动画: 首先我们使用+ (nullable UIImage *)imageNamed:(NSString…
上传图片不全面的想法:把图片保存到本地,然后把图片的路径上传到服务器,最后又由服务器把路径返回,这种方式不具有扩展性,如果用户换了手机,那么新手机的沙盒中就没有服务器返回的图片路径了,此时就无法获取之前已经上传了的头像了,在项目中明显的不可行. 上传图片的正确方式:上传头像到服务器一般是将图片NSData上传到服务器,服务器返回一个图片NSString地址,之后再将NSString的路径转为url并通过url请求去更新用户头像(用户头像此时更新的便是NSString) 代码为: AFHTTPRe…
前言: 在iOS中抽屉动画是很常用的一种技术,使用它有很炫的体验效果,为app增添特色,形式就两种,一个是UIView的侧滑,另一个就是ViewController的侧滑. 实现方式: 抽屉侧滑动画有三种方式,一种是设置UIView的frame实现动画侧滑:一种是使用MMDrawerController框架实现控制器的侧滑:最后一种使用系统的UIScreenEdgePanGestureRecognizer实现侧滑. 第一种方式: UIView的侧滑动画,分别为leftView.mainView.…
Sticky footer布局是什么? 我们所见到的大部分网站页面,都会把一个页面分为头部区块.内容区块和页脚区块,当头部区块和内容区块内容较少时,页脚能固定在屏幕的底部,而非随着文档流排布.当页面内容较多时,页脚能随着文档流自动撑开,显示在页面的最底部,这就是Sticky footer布局. 图示说明 当内容较少时,正常的文档流效果如下图 在正常的文档流中,页面内容较少时,页脚部分不是固定在视窗底部的,这时就要用到Stickyfooter布局. Sticky footer布局效果如下图 这样就…
第一种:利用eclipse中自带的export功能 第一种方法分两种情况先来看第一种情况:没有引用外部jar的项目打包 步骤一:右键点击项目选择导出(export),选择java>jar文件(不是选择可运行jar文件) 步骤二:选择你要导出的项目以及文件,指定文件导出路径.连续点击两个下一步后到第四步. 步骤三:选择主类. 按照以上步骤即可完成对一个不引用外部jar项目的打包. 第二种情况:没有引用外部jar的项目打包 当我们引用了外部jar后,使用eclipse自带的export打包略显繁琐.…
来源:http://www.cnblogs.com/lxblog/ 最近项目中应用多次应用了图片合成,为了今后方便特此记下. 在WPF下有两种图片合成的方式,一种还是用原来C#提供的GDI+方式,命名空间是System.Drawing 和 System.Drawing.Imaging,另一种是WPF中新添加的API,命名空间是 System.Windows.Media 和 System.Windows.Media.Imaging . 我们来做一个简单的例子,分别用上面的两种方式实现,功能是在一个…
最近在做项目中发现,前台提交数据时,如果通过form表单提交和ajax发送json时,springMVC后台接收不能都通过@ModelAttribute方式处理,经过一番查找后,ajax发送json请求时,后台是通过 @ResponseBody来接收数据的.但我不满足于此,对此进行了更多的研究,归纳如下: 一,form表单和ajax发送json请求提交查询请求头显示分布如下图, 经过比较后,得出结论一: 如果请求的Content-Type设置为application/x-www-form-url…
mybatis的xml配置文件中,字段映射的两种方式: 1.resultMap标签中将数据库的字段与实体类中的字段对应: <resultMap id="BaseResultMap" type="com.maket.entity.ActMaketBase" > <id column="id" property="id" /> <result column="acti_name"…
前段时间在写前端的时候,需要监听浏览器的滚轮事件 网上查了一下,找到两种监听滚轮事件的方法: 一.原生js通过window.onscroll监听 //window.onscroll = function() {//为了保证兼容性,这里取两个值,哪个有值取哪一个 var scrollTop = document.documentElement.scrollTop || document.body.scrollTop; //scrollTop就是触发滚轮事件时滚轮的高度 } 二.Jquery通过$(…
目录 一:三层交换机方式 二:单臂路由方式 一:三层交换机方式 如图,PC1和PC2是企业内网的主机,属于不同的部门,故属于不同的VLAN.在交换机上配置vlan 10和vlan 20,并且配上主机的网关.交换机与路由器相邻的接口配置上Vlan30,配置上和路由器接口同一网段的ip.在交换机上配置默认路由指向路由器.AR1是边界路由器,AR1上配置静态路由去往192.168.10.0网段和192.168.20.0网段.AR1还配了默认路由指向AR2.AR1与AR2通过OSPF路由.主机通过NAT…
极光在配置ios端推送时,需要上传p12证书,如果遇到如下图:: 证书上传未通过的原因一般有: 1.当前上传的p12证书密码输入有误: 2. 证书导出的时候展开了证书,把个人私钥导了出来,导证书的时候请不要展开证书: 3.当前上传的证书环境不对,如:在上传开发证书的地方上传了生产证书: 4.该证书已在本账号的其它应用使用: 5.现上传的证书与当前应用已上传成功的证书的bundle id不一致. 前四种原因都可以自己搞定,但最后一种就比较麻烦了... 我正好是因为第五条原因,两次的bundleid…
最近学习加密算法,需要生成素数表,一开始使用简单的循环,从2开始判断.代码如下: #include<iostream> #include<cstdio> #include<cstdlib> #include<vector> #include<iterator> #include<algorithm> #include<ctime> #include<cstring> usingnamespace std; bo…
方式一 1.项目根路径下 maven clean package 或者 maven package ,根据是否需要跳过代码中的测试代码 加上 -DskipTests 2.mvn install:install-file -DgroupId=com.xx -DartifactId=xxx -Dversion=1.0.0 -Dfile=D:\demo-1.0.0.jar -Dpackaging=jar 其中红色部分与自己的maven项目pom文件中的GroupId ArtifactId Versio…
之前做过类似的功能,现在记录一下,来来来... 效果图: 说明=========================== 方法1: 说明:无返回值 用法:直接调用方法.原理是在view的layer层添加. 方法2: 说明:先返回一个Image,再使用 用法:若是image背景,直接使用,若是color背景,用 [UIColor colorWithPatternImage:image]即可. 代码=========================== 方法1: -(void)createByCAGra…
第一种方式:UIImage *image = [UIImage imageNamed:@"image"]; 使用这种方式,第一次读取的时候,先把这个图片存到缓存里,下次再使用时直接从缓存中读取:优点:只有第一次使用的时候稍慢,接下来在使用就会稍快:缺点:如果在当前工程中只使用一次会浪费内存. 第二种方式:initWithContentsOfFiles初始化时,每次都会根据路径去读取,不会占用内存,如果图片在当前工程中只使用一次,应该选择这个方法.…
第一种:通过人为的办法改变view.transform的属性. 具体办法: view.transform一般是View的旋转,拉伸移动等属性,类似view.layer.transform,区别在于View.transform是二维的,也就是使用仿射的办法通常就是带有前缀CGAffineTransform的类(可以到API文档里面搜索这个前缀的所有类),而view.layer.transform可以在3D模式下面的变化,通常使用的都是前缀为CATransform3D的类. 这里要记住一点,当你改变…
创建一个单例很多办法.我先列举一个苹果官方文档中的写法. [cpp] view plaincopy static AccountManager *DefaultManager = nil; + (AccountManager *)defaultManager { if (!DefaultManager) DefaultManager = [[self allocWithZone:NULL] init]; return DefaultManager; } 当然,在iOS4之后有了另外一种写法: […
在Delphi中,对于Windows中的Socket进行了有效的封装.在Delphi中,按其继承关系,可以分层两类:一.TComponent--TAbstractSocket--TCustomSocket--TCustomServerSocket--TServerSocketTComponent--TAbstractSocket--TCustomSocket--TClientSocket二.直接从TObject继承过来:TObject--TCustomWinSocket--TServerWinS…
1. 连接iphone真机 2.选中真机, archive…
分类: Iphone2013-01-24 14:03 986人阅读 评论(0) 收藏 举报 我们知道iOS开启后台任务后可以获得最多600秒的执行时间,而一些需要在后台下载或者与服务器保持连接的App是如何突破600秒的限制的呢?像网易公开课就可以在后台持续下载,优酷也可以在后台持续缓存,这是怎么做到的呢?一般来说,要实现iOS长时间后台运行,需要声明VOIP.Audio或GPS.   Audiosession   实现方法很简单,就是在后台一直播放一个无声的音乐文件,这样就相当于声明了Audi…
1.0  苹果官方写法:  static AccountManager *DefaultManager = nil; + (AccountManager *)defaultManager { if (!DefaultManager) DefaultManager = [[self allocWithZone:NULL] init]; return DefaultManager; } 2.0  在iOS4之后有了另外一种写法: + (AccountManager *)sharedManager {…
http://www.cocoachina.com/applenews/devnews/2012/1212/5313.html 我们知道iOS开启后台任务后可以获得最多600秒的执行时间,而一些需要在后台下载或者与服务器保持连接的App是如何突破600秒的限制的呢?像网易公开课就可以在后台持续下载,优酷也可以在后台持续缓存,这是怎么做到的呢?一般来说,要实现iOS长时间后台运行,需要声明VOIP.Audio或GPS.   Audiosession   实现方法很简单,就是在后台一直播放一个无声的…
1.打开XCode打开project文件.选择Product,再点击Archive. 2.鼠标右键点击Shoe In Finder 3.鼠标右键选择"显示包内容" 4.鼠标左键双击Products目录 5.打开iTunes,鼠标点击例如以下操作,选择"应用程序" 6.将Applications文件下的project文件.拖入例如以下空白处. 7.拖入之后显演示样例如以下. 8.鼠标右键选择"在Finder中显示" 9.例如以下显示就是"…
前言: 看完了使用MPMoviePlayerController播放在线视频,在实际应用中有时候须要获取视频的缩略图,我们来看看怎样截取指定时间内的视频缩略图. 一  使用MPMoviePlayerController自带的方法 - (void)requestThumbnailImagesAtTimes:(NSArray *)playbackTimes timeOption:(MPMovieTimeOption)option NS_AVAILABLE_IOS(3_2); /** * 视频截图 *…
Response对象的几点说明: Response对象用来描述一个HTTP响应,Response只是一个基类,根据相应的不同有如下子类: TextResponse,HtmlResponse,XmlResponse 仅以HtmlResponse为例,HtmlResponse在基类Response的基础上,还多了很多新的方法. 一.使用Selector 因为链接也是页面中的数据,所以可以使用与提取数据相同的方法进行提取.在分析网页时可以通过jupyter notebook构造selector对象进行…
使用以下PHP代码可以生成唯一的6位的短网址. 代码如下: <?php //生成短网址方法1 function shortUrl1($url) { if (empty($url)) { return FALSE; } $url = crc32($url); $crc32 = sprintf("%u", $url); $show = ''; while ($crc32 > 0) { $s = $crc32 % 62; if ($s > 35) { $s = chr($s…
一.利用反射生成查询语句 该方法转载自:https://jhrs.com/2019/28488.html (略有修改) using Microsoft.EntityFrameworkCore.Query; using Microsoft.EntityFrameworkCore.Query.Internal; using Microsoft.EntityFrameworkCore.Storage; using System.Linq; using System.Reflection; namesp…
读写锁ReentrantReadWriteLock概述 大型网站中很重要的一块内容就是数据的读写,ReentrantLock虽然具有完全互斥排他的效果(即同一时间只有一个线程正在执行lock后面的任务),但是效率非常低.所以在JDK中提供了一种读写锁ReentrantReadWriteLock,使用它可以加快运行效率. 读写锁表示两个锁,一个是读操作相关的锁,称为共享锁:另一个是写操作相关的锁,称为排他锁.我把这两个操作理解为三句话: 1.读和读之间不互斥,因为读操作不会有线程安全问题 2.写和…