自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Ryan's zone

Never let yourself regret

  • 博客(149)
  • 资源 (26)
  • 收藏
  • 关注

原创 IOS学习笔记32—使用Storyboard实现复杂界面

Storyboard是IOS5以后新增的内容,从名字上看,是以故事面板的形式来展现界面间的逻辑关系,Storyboard的功能很强大,今天就简要介绍Storyboard的基本使用,界面间的关系,以及如何使用xib和Storyboard共同使用的情况。首先新建一个Empty工程,并新建一个Storyboard,我命名为MainStoryboard,以下是完整的工程目录结构:打开Mai

2012-08-29 11:04:52 28983 4

原创 IOS学习笔记31—两个ViewController间传值(二)

在上一篇 两个ViewController间传值(一)中说明了如何从A传值到B,这次要讲的是如何从A进入B,在B输入值后回传给A,这类似于Android中的利用Activity的onActivityResult回调方法实现两个Activity之间的值传递,那么在IOS中如何实现这个功能呢,答案是使用Delegate(委托协议)。首先来看看工程结构图:其中有两个ViewControl

2012-08-28 10:51:51 31048 15

原创 IOS学习笔记30—两个ViewController间传值(一)

IOS中,在两个ViewController之间传值有多种方式,这里学习其中一种,利用临时变量在两个ViewController之间传值,这可能不是最好的传值方式,但是也是一种选择。首先看看工程结构:其中ViewController是第一个界面,SecondViewController是第二个界面,UserEntity为一个实体对象,用来作为在两个界面间传值的媒介。接下来看看最

2012-08-27 21:23:55 43703 4

原创 ListView异步加载图片

在应用开发中,经常用到ListView去加载数据,加载图片和文字是比较常见的,文字还好,图片从网络请求加载速度比较慢,所以需要把图片的加载放到另一个线程中去执行,执行完了再更新UI线程。以下列出一个我在项目中使用到的异步加载图片的解决方案,代码没有上全,给出核心部分。大致思路是这样:1.利用软引用来缓存图片Bitmap,用图片的URL作为缓存查找的Key;2.设两级缓存,一级是

2012-08-19 15:29:02 4773 4

转载 为什么IOS比Android更吸引开发者

1、IOS开发比Android开更容易赚钱1.1 Appstore上的应用和游戏比Android play store质量高         现在Android Market变更为Android play store,App Store大概已经超过60万应用了,Android play store大约30万,App store的应用和游戏都是通过严格审核的,大多是收费的应用游戏。A

2012-08-18 08:51:09 4140 12

原创 IOS学习笔记29—提示框第三方库之MBProgressHUD

MBProgressHUD是一个开源项目,实现了很多种样式的提示框,使用上简单、方便,并且可以对显示的内容进行自定义,功能很强大,很多项目中都有使用到。到GitHub上可以下载到项目源码https://github.com/jdg/MBProgressHUD,下载下来后直接把MBProgressHUD.h和MBProgressHUD.m拖入工程中就行,别忘了选择拷贝到工程。完了在需要使用的地方导入

2012-08-17 13:59:37 72265 20

原创 IOS学习笔记28—SQLite3第三方库之FMDB

SQLite是一种小型的轻量级的关系型数据库,在移动设备上使用是非常好的选择,无论是Android还是IOS,都内置了SQLite数据库,现在的版本都是SQLite3。在IOS中使用SQLite如果使用SDK提供的方法,特别麻烦也不利于理解和使用,在之前的http://blog.csdn.net/tangren03/article/details/7781930文章中就是使用IOS的SDK自带的S

2012-08-17 00:06:51 20601 23

原创 IOS学习笔记27—使用GDataXML解析XML文档

在IOS平台上进行XML文档的解析有很多种方法,在SDK里面有自带的解析方法,但是大多情况下都倾向于用第三方的库,原因是解析效率更高、使用上更方便,关于IOS平台各种解析XML库的优缺点分析,可以看下这篇文章:http://www.raywenderlich.com/553/how-to-chose-the-best-xml-parser-for-your-iphone-project这里主要

2012-08-15 11:11:17 33531 13

原创 IOS学习笔记26—HTTP操作之ASIHTTPRequest(二)

利用ASIHTTPRequest也可以向服务器提交请求参数,今天就做一个登录的例子,客户端发送XML请求,然后得到服务端的响应,响应的结果是返回XML字符串。直接上代码吧,代码中有详细注释。首先在.h文件中做如下声明:#import @interface ViewController : UIViewController@property (retain,nonatomic)

2012-08-13 15:50:12 11127 10

原创 IOS学习笔记25—HTTP操作之ASIHTTPRequest(一)

ASIHTTPRequest是一个第三方开源项目,在现在的IOS应用中多使用到这个开源类库来提供网络操作,相比于SDK提供的网络操作类库,ASIHTTPRequest使用上更加方便、效率更高,同时功能也非常强大。这是ASIHttpRequest的官网:http://allseeing-i.com/ASIHTTPRequest/以下是官方对ASIHttpRequest的解释:What

2012-08-12 10:04:39 9708 3

原创 IOS学习笔记24—block

Block是IOS4以后引进的新语法,用来实现匿名函数的特性,有点类似于Java中的匿名内部类但又有一点差别。Apple官方文档对block的解释是:A block is an anonymous inline collection of code, and sometimes also called a "closure".意思就是block是一个匿名的内联代码集合,也被称为“闭包”(closu

2012-08-10 15:23:42 6209

原创 IOS学习笔记23—多线程之NSThread、NSOperation、NSInvocationOperation

IOS中支持多线程操作,使用NSThread和NSInvocationOperation可以完成多线程功能。多线程的功能主要是为了防止阻塞主线程的工作(主要是UI操作和显示),使一些耗时的的操作在另一个线程中完成,完成后可以通知主线程来进行UI上的更新。多线程功能在实际开发中用的很多,最典型的就是网络请求和处理操作,下面主要来讨论一下Cocoa中的NSThread和NSInvocationOper

2012-08-08 12:39:09 7894 1

原创 二维码、条形码扫描——使用Google ZXing

我在项目中用到了二维码扫描的技术,用的是Google提供的ZXing开源项目,它提供二维码和条形码的扫描。扫描条形码就是直接读取条形码的内容,扫描二维码是按照自己指定的二维码格式进行编码和解码。可以到http://code.google.com/p/zxing/下载ZXing项目的源码,然后按照官方文档进行开发,我这里使用的ZXing是经过简化版的,去除了一些一般使用不必要的文件,项目工程截图

2012-08-05 12:49:46 64408 104

原创 IOS学习笔记22—文件操作(NSFileManager)结合相册小例子

这个示例程序主要用到了IOS中的UIImageView、UIImagePickerViewController、UIImage、NSFileManager等知识,结合这些知识构成一个小的应用程序,主要功能是对相册图片进行读取、存储到指定文件夹、从指定文件夹读取出来。这方面的知识在正式项目中用的是比较多的。做Android开发中,经常会使用到将图片保存到SD卡和从SD卡读取图片的操作,相比于Andr

2012-08-04 21:52:27 15065 17

原创 IOS学习笔记21—沙盒机制(SandBox)

IOS中的沙盒机制(SandBox)是一种安全体系,它规定了应用程序只能在为该应用创建的文件夹内读取文件,不可以访问其他地方的内容。所有的非代码文件都保存在这个地方,比如图片、声音、属性列表和文本文件等。1.每个应用程序都在自己的沙盒内2.不能随意跨越自己的沙盒去访问别的应用程序沙盒的内容3.应用程序向外请求或接收数据都需要经过权限认证查看模拟器的沙盒文件夹在Mac电脑上的

2012-08-03 11:32:30 7246 2

原创 IOS学习笔记20—UIActivityIndicatorView、UIProgressView

UIActivityIndicatorView和UIProgressView都继承自UIView,所以他们可以附属在其他视图上。UIActivityIndicatorView是一个进度提示器,显示一个小圆圈在转动,主要用在一些耗时操作的提示上,比如网络请求;UIProgressView是一个进度提示条,不过它可以显示一个进度,可以告知用户操作已经进行了多少,这二者的目的都是为了在应用程序有耗时操作

2012-08-01 12:28:57 12469

原创 IOS学习笔记19—UIImagePickerController(图像选取器)

UIImagePickerController是一种导航控制器,使用它,用户可以打开系统的图片选取器或者打开相机进行拍照。实现协议UIImagePickerDelegate中定义的委托方法可以对选定后的结果进行操作,或是没有选择取消的操作。UIImagePickerController有三个图片源:UIImagePickerControllerSourceTypePhotoLibr

2012-07-31 12:58:28 9701

原创 IOS学习笔记18—UIImageView

以前我们使用过UIImage来加载图片,而UIImageView是在界面上显示图片的一个控件,在UIImageView中显示图片的话应该首先把图片加载到UIImage中,然后通过其他方式使用该UIImage。以下说明了四种常用的加载UIImage的方法:imageNamed:使用应用程序束中的一个文件来创建,IOS4以后的版本中可以省略图片扩展名;imageWithCGImage:使用Qu

2012-07-30 10:46:04 36725

原创 IOS学习笔记17——Core Location

IOS支持三种检测当前位置的方式:手机基站、Wi-Fi、和GPS,其中GPS是经度最高的,同时也是最耗费手机电量的。一般情况下在室内是无法通过GPS获取位置信息的,通过Wi-Fi获取位置的原理是通过网络提供商的IP地址信息来获取位置,经度不是很高,最后是通过手机基站获取位置,手机开机后会连接附近的基站塔获取信号,通过基站可以得到手机所在的位置信息,基站越密集,所获取的位置信息经度就越高。

2012-07-29 10:44:52 9781

翻译 Android Content Providers(三)——Contacts Provider

接着上篇Android Content Providers(二)——Contacts Provider继续,接下来要说明的是顶层的Contacts,Contacts是聚合联系人表,在之前讨论的RawContacts是原始联系人表,在Android通讯录的架构中,分为聚合联系人、原始联系人和数据表三层。数据表主要存储数据和与原始联系人相关联的ID,Data表的字段Data在之前已经说明过,原始联系人

2012-07-28 11:23:57 6689 2

原创 IOS学习笔记16——Core Data

Core Data是一个功能强大的层,位于SQLite数据库之上,它避免了SQL的复杂性,能让我们以更自然的方式与数据库进行交互。Core Data将数据库行转换为OC对象(托管对象)来实现,这样无需任何SQL知识就能操作他们。Core Data位于MVC设计模式中的模型层,一般需要在设备上存储结构化数据时,考虑使用SQLite或是序列化等方法,而Core Data是这两种方法的混合体,并增加

2012-07-27 16:37:50 45865 8

翻译 Android Content Providers(二)——Contacts Provider

接上篇Android内容提供者——Content Providers(一)Contacts Provider是Android中一个强大并且灵活的组件,负责管理系统通讯录的数据,对外提供访问接口来对系统通讯录进行访问和操作。以下是Contacts Provider的组织结构图:可以看出Android的系统通讯录是三层架构,通过URI进行访问。下面看一下每一层的类结构和官方解释:

2012-07-27 12:40:08 6283

翻译 Android内容提供者——Content Providers(一)

Content Providers是Android四大组件之一,扮演者非常重要的角色,看下官方文档对它的解释:Content providers manage access to a structured set of data. They encapsulate the data, and provide mechanisms for defining data security.

2012-07-26 16:39:06 5189

原创 我的Android之旅——学习、项目、心态

学习Android也一年多了,项目做了五六个,有大有小,有难有易。一直以来都没有好好总结过,今天周六休息,就写下这一年多从事Android以来的一些感想和小经验。涉及学习、项目和一些个人感受。1.学习篇     我是从11年5月份开始接触并学习Android的,在那之前有过一年的J2EE的经验,做过三个J2EE的项目,从08年开始接触Java,所以到去年学习Androi

2012-07-25 11:53:24 24327 117

原创 IOS学习笔记15——SQLite数据库

SQLite是MySQL的简化版,更多的运用与移动设备或小型设备上。SQLite的优点是具有可移植性,它不需要服务器就能运行,同时,它也存在一些缺陷,首先,没有提供简单的数据库创建方式,必须手工创建数据库,其次,SQLite没有面向对象接口,必须使用依赖于C语言代码的API。相对于OC,这套API既不那么优雅,也更难使用。当相比于用文件进行存储,还是更推荐使用SQLite进行数据存储。

2012-07-24 19:42:19 8850 6

原创 仿Android ISC 4.0效果对话框

Android 4.0冰淇林三明治系统已经推出有一段时间了,这次推出的系统在UI上有了很大的提升,摆脱了以前那种难看的土鳖界面,我做了一个类似Android 4.0效果的弹出框,可以在非4.0系统上有类似4.0效果的风格,有两种风格,拿出来分享 一下。首先看下效果图:这是选择对话框,一般在退出或做选择操作时用到,另一个是列表选择框,效果如图:下面就来

2012-07-22 17:15:57 7419 9

翻译 Android中Service(服务)详解

Service是Android中四大组件之一,在Android开发中起到非常重要的作用,先来看一下官方对Service的定义:A Service is an application component that can perform long-running operations in the background and does not provide a user interfac

2012-07-21 18:21:20 127139 17

转载 团队需要的六种人

1. “怂恿者”( Instigator):怂恿者,是那种会推动你,让你思考的人。他会一直地让你有动力早起做事,尝试并将事情变为可能。你会希望这个人充满活力并保持热情。这是灵感之声。2. 支持者:他是一个大粉丝,一个强有力的支持者,并且还是一个为你和你的工作进行狂热传播的人。让他得到奖励,持续让他们参与。这是动力之声。3. 怀疑者:他

2012-07-20 21:11:45 3893 2

原创 IOS学习笔记14—用户首选项NSUserDefaults

用户首选项是用来保存和记录用户在操作应用的过程做做出的一些选择或设置。类似Android开发中的SharedPreference,可以存储一些数据,但基本都是简单类型的数据,主要作用都是存储一些用户设置数据,比如是否是首次登陆,就可以设置一个布尔类型的变量,设值为true或false。NSUserDefaults的几个重要方法:standardUserDefaults:创建共享默认

2012-07-20 20:19:30 7377 1

原创 团队、项目、产品之我见

项目决定开始重新改版后,我们到爱立信中国总部进行了项目的第一次产品会议,核心团队成员基本到场,会议很成功,也受到很多启发,在这里简要分享一下我的感受。1.规范化的团队管理       我们的团队成员都是北航在读研究生,学校实验室与爱立信中国实验室合作开展工作,由爱立信中国实验室负责人指导。一个成功的团队,肯定离不开良好的制度和团队文化,一个团队的走向和发展趋势跟团队的带头人有很大的关系,所

2012-07-19 10:13:45 3378 3

原创 IOS学习笔记13—UINavigationController

导航控制器UINavigationController控制一系列的UIViewController,他们组成一个层次结构,每一个ViewController都在这个层次结构中上下移动,组织方式是栈形式。每个UIViewController都有相关联的UINavigationItem,后者处于活动状态时将位于UINavigationBar中,每个UINavigationItem都可能包含一个或多

2012-07-18 20:37:36 4661 4

原创 IOS学习笔记12—UITabBarController

UITabBarController是选项卡栏导航控制器,显示效果是在页面底部有多个选项卡,通过点击不同选项卡可以在不同的ViewController之间进行切换。这种对象的层次结构至少包含6个对象:一个UITabBarController;两个UIViewController;一个UITabBar;两个UITabBarItem;UITabBarContro

2012-07-18 11:27:41 8234 3

转载 App开发者必备的运营、原型、UI设计工具整理

一、运营类1. APPVIEW,网址:http://lab.hakim.se/appview/帮助iOS 应用开发者追踪所有地区App Store最近的用户评论,可以按时间、评分、地区排序,缺点是可能更新较慢,评论不全。2. AppBrain,网址:http://www.appbrain.com/  可以在此查看Android应用在应用商店的用户评论,更新及

2012-07-17 22:55:57 15411 3

原创 IOS学习笔记11—IOS通知中心

IOS中还有一类产生事件的功能,那就是通知。通过通知,可以在一定的条件下触发响应的事件。类似于Android中的广播机制(Broadcase Receiver),接收到通知(广播)后,便可执行指定的方法。通过NSNotificationCenter获取通知对象,注册并使用通知。下面 以一个例子为例:UIApplication *application = [UIApplicat

2012-07-17 22:15:23 7801 1

原创 IOS学习笔记10—UIControl对象详解

上篇讲到了UITouch和UIEvent事件,简单回顾一下,UIEvent是一系列UITouch的集合,在IOS中负责响应触摸事件。另外还提到了响应者链的概念,在IOS中,所有事件有一个最先响应者,事件可以沿着响应者链向下传递。接下来是UIControl对象UIControl是UIView的子类,当然也是UIResponder的子类。UIControl是诸如UIButton、UIS

2012-07-17 11:22:06 15434 2

原创 爱立信实验室实习感想(二)

接着昨天的写,从七月份开始,我们成了爱立信的实习生,常驻爱立信实验室。在实验室,主要负责移动项目的开发,目前我负责的是一款名片交换类应用,基于二维码扫描,同时具备交换历史记录功能。原本可以像其他同学一样,这学期可以出去找工作实习,而且工资待遇也比在实验室高出很多,但我没有,我觉得这个地方能带给我的成长更多,包括带领一个团队进行项目开发,来制定实验室的一些制度,我们现在做的,是在构建这个实验室的

2012-07-17 09:09:36 3626 3

原创 爱立信实验室实习感想(一)

时间过的很快,将近一年过去了,上次写了一篇“爱立信北航联合实验室面试经验”,到现在,我已经成了爱立信实验室的核心成员,负责实验室重点项目的管理和开发工作。在这不到一年的时间中,从自身感觉出发,确实成长了很多,也学会了很多。接下来,从几个方面来说说这一年我的感悟。当然,学生,肯定离不开学习,首先来谈谈学习上吧。现在进入研二了,在爱立信实验室实习,工作直接与爱立信中国总部对接,爱立信中国实验室的负

2012-07-16 22:57:31 3051

转载 营销时机:没有更好,只有更早

1. 认同产品的现状在我们刚开始的时候,我们曾犯过一个错误,就是快速地停下我们正在做着的事情,然后想着“现在这个并不是我们最终想要的产品,等我们拥有了这个功能和那个功能,那才会是我们的产品。”这样的想法既没完没了地挫伤了我,同时还会让打乱我们的分析,阻碍早期的营销。这也是为什么我们一直说服自己:不管我们现在这个产品的状态是怎样,它就是我们的产品,这就是我们所拥有的。你在明天或者余下

2012-07-16 20:42:59 1425 1

原创 IOS学习笔记9—IOS触摸事件监听和操作

在IOS开发中会遇到各种操作事件,通过程序可以对这些事件做出响应。首先,当发生事件响应时,必须知道由谁来响应事件。在IOS中,由响应者链来对事件进行响应,所有事件响应的类都是UIResponder的子类,响应者链是一个由不同对象组成的层次结构,其中的每个对象将依次获得响应事件消息的机会。当发生事件时,事件首先被发送给第一响应者,第一响应者往往是事件发生的视图,也就是用户触摸屏幕的地方。事件将沿

2012-07-16 20:15:26 17785 3

原创 仿微信首次启动滑动界面效果

用过微信的都知道,第一次启动时会出现一系列操作说明或功能说明的画面,滑到底然后就进入正式界面,今天我也参考网络资源模仿着做了一个。首先看下工程结构图:首先看布局文件main.xml<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/m

2012-07-16 17:55:14 16249 30

百度导航Demo

实现百度定位导航及地图API,百度LBS相关服务已升级,请去官网查看

2013-12-02

EGOImageLoading图片列表异步加载

使用开源项目EGOImageLoading实现图片列表异步加载显示,自动缓存管理

2013-07-12

iOS图片异步加载SDWebImage

在开发中经常会遇到列表加载的功能,其中大部分都包括图片列表加载,但移动设备本身内存有限,而大量图片加载又很耗内存。今天主要就介绍一个第三方图片异步加载库SDWebImage

2013-07-07

Android图片异步加载-ListView、GridView、ViewPager

今天要介绍的是Github上一个使用非常广泛的图片异步加载库Android-Universal-Image-Loader

2013-07-03

iOS左右滑动菜单Demo

实现左右滑动菜单功能,可自定义界面——SlidingMenu

2013-04-23

iOS6下实现自定义UI控件

在iOS6下实现自定义UI控件效果,替换原生效果

2013-04-05

Activity、BoradcastReceiver、Service综合Demo

详解三大组件的综合使用,广播的静态注册与动态注册,如何结合Service使用广播等

2013-03-17

Android拍照、相册选取、截图综合Demo

实现Android相机拍照、相册选取后直接显示以及截图后显示,解决因Bitmap导致的内存溢出问题。

2013-03-10

Android相机、相册获取图片显示并保存

实现从相机拍照和相册选取图片显示并保存到本地SD卡操作Demo,避免了Bitmap导致的内存溢出

2013-03-09

iOS拍照、选图、截图示例

实现拍照、从相册选择图片并对图片进行截取的Demo

2013-01-05

Android端与服务端TCP通讯

利用TCP/IP协议,使用Socket在Android端与服务端进行简单的输入通讯

2012-12-09

直接保存对象到数据库Demo

使用开源项目db4o实现在Android中直接保存对象到数据库的Demo

2012-12-02

解决键盘遮挡输入框

主要功能包括: 自适应键盘出现后View的高度调整,防止遮挡输入框 点击背景区域关闭键盘 响应键盘上Return按钮事件(实现在上下UITextFiled间切换光标)

2012-11-20

IOS第三方SQLite支持——FMDB

IOS中第三方SQLite支持包,实现基本的DB操作Demo

2012-11-20

Android下拉刷新ListView——RTPullListView

实现Android上类似新浪微博等App的下拉刷新功能

2012-11-18

微信聊天气泡UI实现

仿微信聊天窗口实现,文字信息以气泡方式展现,UI可自定义

2012-11-11

IntentService使用Demo

IntentService使用示例,原理以及用途,详细说明了IntentService运行流程

2012-11-04

百度地图定位导航Demo

利用百度地图API实现定位和根据目的地进行导航的功能

2012-09-05

IOS下拉刷新Demo实现

使用EGOTableViewPullRefresh开源项目在IOS中实现UITableView的下拉刷新功能,对源码进行了一些改动,支持中英文显示,刷新时间格式也做了修改

2012-09-04

IOS—Storyboard创建混合项目

使用IOS5以后新加的Storyboard创建复杂布局项目,同时结合xib文件和Storyboard共同使用

2012-08-29

使用Delegate在两个ViewController间传值

在IOS中使用委托协议在两个View之间传值,类似Android中Activity的onActivirtyResult方法

2012-08-28

IOS实现在两个ViewController间传值(一)

IOS实现在两个ViewController间传值

2012-08-27

条形码、二维码扫描、生成Demo 完整源码

使用Google ZXing开源项目制作的条形码、二维码的生成、扫描Demo

2012-08-05

访微信首次启动界面

访微信首次启动时滑动界面效果,适合应用开发中用户首次启动时对软件的一个简要介绍需求

2012-07-20

java程序,MVC自定义框架

很不错的程序,自定义的MVC框架,类似Struts

2010-05-31

C语言版数据结构源码下载

收复失地防守打法是手动阀傻蛋发送发送发大水很好用的源码资源

2009-04-19

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除