<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[影子的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/yingzi80</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; yingzi80]]></copyright><item><title><![CDATA[NSWindow支持Drag-and-Drop]]></title><link>https://blog.youkuaiyun.com/yingzi80/article/details/60604908</link><guid>https://blog.youkuaiyun.com/yingzi80/article/details/60604908</guid><author>yingzi80</author><pubDate>Mon, 06 Mar 2017 22:47:52 +0800</pubDate><description><![CDATA[在NSView中，通过registerForDraggedTypes:来支持Drag-and-Drop。


[self registerForDraggedTypes:@[NSColorPboardType, NSFilenamesPboardType]];



对于NSWindow，通过awakeFromNib来支持Drag-and-Drop

- (void)awakeF]]></description><category></category></item><item><title><![CDATA[分离默认的NSDocument的窗口]]></title><link>https://blog.youkuaiyun.com/yingzi80/article/details/41719979</link><guid>https://blog.youkuaiyun.com/yingzi80/article/details/41719979</guid><author>yingzi80</author><pubDate>Thu, 04 Dec 2014 10:08:55 +0800</pubDate><description><![CDATA[使用XCode创建Cocoa Application时，选择“Create Document-Based Application”应用时，XCode会默认把主窗口放在Document类中。在代码膨胀后，会导致Document和Window的代码混杂在一起，不方便。


现在，我们将Window的代码放到WindowController类里，减少Document中的Window代码。]]></description><category></category></item><item><title><![CDATA[OpenGL ES Programming Guide for iOS 使用OpenGL ES和GLKit绘图]]></title><link>https://blog.youkuaiyun.com/yingzi80/article/details/38069127</link><guid>https://blog.youkuaiyun.com/yingzi80/article/details/38069127</guid><author>yingzi80</author><pubDate>Wed, 23 Jul 2014 18:51:10 +0800</pubDate><description><![CDATA[使用OpenGL ES和GLKit绘图
GLKit框架提供视图和视图控制器类，减少重复的设置和维护用来绘图和动画的OpenGLES上下文content。GLKView类管理OpenGLES的基础，来提供的绘图代码的地方，GLKViewcontroller类保证OpenGLES上下文绘制在GLView上的动画平滑的循环渲染。这些类扩展了UIKit里绘制视图上下文和管理视图呈现的标准设计模式。作为结]]></description><category></category></item><item><title><![CDATA[MKNetworkKit GET请求中使用中文]]></title><link>https://blog.youkuaiyun.com/yingzi80/article/details/38025097</link><guid>https://blog.youkuaiyun.com/yingzi80/article/details/38025097</guid><author>yingzi80</author><pubDate>Mon, 21 Jul 2014 22:24:34 +0800</pubDate><description><![CDATA[在开发app时，按惯例认为用户名是英文和数字，没考虑中文用户名，导致老]]></description><category></category></item><item><title><![CDATA[Objective-C Runtime Programming Guide]]></title><link>https://blog.youkuaiyun.com/yingzi80/article/details/37907513</link><guid>https://blog.youkuaiyun.com/yingzi80/article/details/37907513</guid><author>yingzi80</author><pubDate>Thu, 17 Jul 2014 15:18:36 +0800</pubDate><description><![CDATA[引言
Objective-C语言把许多执行从编译时和链接时推迟到运行时。 只要有可能，它就动态执行。这意味着该语言不仅需要一个编译器，还要有一个运行时系统执行编译后的代码。对于Objective-C语言，运行时系统是操作系统的一部分;使这门语言得以正常工作。
本文着眼于NSObject和Objective-C程序与运行时系统的交互。 特别是，它探讨了在运行时动态加载新类的模式，转发消息到其它对]]></description><category></category></item><item><title><![CDATA[OpenGL ES Programming Guide for iOS 配置OpenGL ES上下文]]></title><link>https://blog.youkuaiyun.com/yingzi80/article/details/37874575</link><guid>https://blog.youkuaiyun.com/yingzi80/article/details/37874575</guid><author>yingzi80</author><pubDate>Wed, 16 Jul 2014 11:31:56 +0800</pubDate><description><![CDATA[配置OpenGL ES上下文
OpenGL ES规范中通过对OpenGL ES的每一个实现提供一种方式来创建渲染上下文，来管理所需的状态。通过将这种状态的情况下，多个应用程序可以轻松地共享显卡硬件而不受其他的状态干预。
本章详细介绍了在iOS环境如何创建和配置上下文。
EAGL是一个OpenGL ES渲染上下文的iOS的实现
应用程序可以调用任何的OpenGL ES的功能，但它必须初始化一]]></description><category></category></item><item><title><![CDATA[OpenGL ES Programming Guide for iOS 之 iOS 中的OpenGL ES]]></title><link>https://blog.youkuaiyun.com/yingzi80/article/details/37873989</link><guid>https://blog.youkuaiyun.com/yingzi80/article/details/37873989</guid><author>yingzi80</author><pubDate>Wed, 16 Jul 2014 11:08:37 +0800</pubDate><description><![CDATA[iOS 中的OpenGL ES

 
OpenGL ES的规范定义了使用GPU硬件渲染图形的平台无关的API。平台 实现OpenGLES时提供了一个渲染上下文，用于执行OpenGLES命令，帧缓存用来保持渲染结果，而呈现出的帧缓冲用于对其中的内容进行一个或多个渲染目的地 显示。在iOS上，EAGLContext类实现一个渲染上下文。iOS只提供一种帧缓冲，OpenGLES帧缓冲区对象，GLK]]></description><category></category></item><item><title><![CDATA[OpenGL ES Programming Guide for iOS 关于OpenGL ES]]></title><link>https://blog.youkuaiyun.com/yingzi80/article/details/37872977</link><guid>https://blog.youkuaiyun.com/yingzi80/article/details/37872977</guid><author>yingzi80</author><pubDate>Wed, 16 Jul 2014 10:24:37 +0800</pubDate><description><![CDATA[关于OpenGL ES
开放图形库（OpenGL）用于二维和三维数据可视化。它是一种多用途的开放标准，支持2D和3D数字内容创作，机械和建筑设计，虚拟原型，模拟飞行，视频游戏等等。使用OpenGL来配置3D图形管线，提交数据。OpenGL通过顶点变换和照明，组装成原语和光栅化来创建2D图像。OpenGL被设计成将函数变换为图形命令，发送到底层图形硬件。因为这个底层的硬件是专门为图形处理命令，所以]]></description><category></category></item><item><title><![CDATA[mac os平台编译jaberd]]></title><link>https://blog.youkuaiyun.com/yingzi80/article/details/11195535</link><guid>https://blog.youkuaiyun.com/yingzi80/article/details/11195535</guid><author>yingzi80</author><pubDate>Fri, 06 Sep 2013 13:30:56 +0800</pubDate><description><![CDATA[拿到jabberd-1.4.4.tar.gz，直接双击，解压到jabberd-1.4.4目录。
打开终端，进入jabberd-1.4.4目录。
siteview-mactekiMac-mini:~ siteview_mac$ pwd
/Users/siteview_mac
siteview-mactekiMac-mini:~ siteview_mac$ cd /Users/siteview_m]]></description><category></category></item><item><title><![CDATA[XMPP中roster的管理]]></title><link>https://blog.youkuaiyun.com/yingzi80/article/details/10328421</link><guid>https://blog.youkuaiyun.com/yingzi80/article/details/10328421</guid><author>yingzi80</author><pubDate>Mon, 26 Aug 2013 11:06:46 +0800</pubDate><description><![CDATA[在XMPP中，roster代表好友列表。
登录成功之后，请求roster列表

     
   


服务器发过来roster列表应答

     
       <item jid='romeo@example.net'
             name='Romeo'
             subscription='both'>
         Friends
    ]]></description><category></category></item><item><title><![CDATA[XMPPFramework中用户对象查询]]></title><link>https://blog.youkuaiyun.com/yingzi80/article/details/10327483</link><guid>https://blog.youkuaiyun.com/yingzi80/article/details/10327483</guid><author>yingzi80</author><pubDate>Mon, 26 Aug 2013 10:42:59 +0800</pubDate><description><![CDATA[查询数据库
- (XMPPUserCoreDataStorageObject *)userForJID:(XMPPJID *)jid
                                   xmppStream:(XMPPStream *)stream
                         managedObjectContext:(NSManagedObjectCon]]></description><category></category></item><item><title><![CDATA[XMPP创建房间]]></title><link>https://blog.youkuaiyun.com/yingzi80/article/details/9926585</link><guid>https://blog.youkuaiyun.com/yingzi80/article/details/9926585</guid><author>yingzi80</author><pubDate>Mon, 12 Aug 2013 16:31:38 +0800</pubDate><description><![CDATA[请求
    //创建一个新的群聊房间,roomName是房间名 fullName是房间里自己所用的昵称
    NSString *jidRoom = [NSString stringWithFormat:@"%@@conference.siteviewwzp", roomName];
    XMPPJID *jid = [XMPPJID jidWithString:jidRoom];]]></description><category></category></item><item><title><![CDATA[Google Map SDK for ios 1.4.0]]></title><link>https://blog.youkuaiyun.com/yingzi80/article/details/9712851</link><guid>https://blog.youkuaiyun.com/yingzi80/article/details/9712851</guid><author>yingzi80</author><pubDate>Fri, 02 Aug 2013 09:49:20 +0800</pubDate><description><![CDATA[升级到Google Map SDK for ios 1.4.0，出现如下错误


2013-08-02 09:37:36.312 ChatTest[858:3b03] Got tile data from cache that couldn't be decoded; coords [10,833,429], GMSDASHTileService: GMSVectorMapTileServi]]></description><category></category></item><item><title><![CDATA[XMPPCapabilities]]></title><link>https://blog.youkuaiyun.com/yingzi80/article/details/9491741</link><guid>https://blog.youkuaiyun.com/yingzi80/article/details/9491741</guid><author>yingzi80</author><pubDate>Fri, 26 Jul 2013 09:48:26 +0800</pubDate><description><![CDATA[加入XMPPCapabilities Module    xmppCapabilitiesStorage = [XMPPCapabilitiesCoreDataStorage sharedInstance];
    xmppCapabilities = [[XMPPCapabilities alloc] initWithCapabilitiesStorage:xmppCapabilitiesSt]]></description><category></category></item><item><title><![CDATA[XEP-0045多人聊天相关协议]]></title><link>https://blog.youkuaiyun.com/yingzi80/article/details/9419843</link><guid>https://blog.youkuaiyun.com/yingzi80/article/details/9419843</guid><author>yingzi80</author><pubDate>Tue, 23 Jul 2013 12:05:01 +0800</pubDate><description><![CDATA[XMPPRoom


向服务器请求列表：
- (void)fetchBanList;
- (void)fetchMembersList;
- (void)fetchModeratorsList;


XMPPRoom委托：
// 收到聊天室消息
- (void)xmppRoom:(XMPPRoom *)sender didReceiveMessage:(XMPPMessage]]></description><category></category></item><item><title><![CDATA[<failure xmlns="urn:ietf:params:xml:ns:xmpp-sasl"><not-authorized/></failure>]]></title><link>https://blog.youkuaiyun.com/yingzi80/article/details/9417993</link><guid>https://blog.youkuaiyun.com/yingzi80/article/details/9417993</guid><author>yingzi80</author><pubDate>Tue, 23 Jul 2013 09:52:12 +0800</pubDate><description><![CDATA[在使用XMPPFramework的例子iPhoneXMPP时，使用ip地址，怎么也登录不进去。





2013-07-23 09:35:37:396 iPhoneXMPP[6666:c07] iPhoneXMPPAppDelegate: xmppStreamDidDisconnect:withError:
2013-07-23 09:35:37:396 iPhoneXMPP[66]]></description><category></category></item><item><title><![CDATA[网络协议的第二层境界]]></title><link>https://blog.youkuaiyun.com/yingzi80/article/details/6279777</link><guid>https://blog.youkuaiyun.com/yingzi80/article/details/6279777</guid><author>yingzi80</author><pubDate>Thu, 14 Jul 2011 16:51:54 +0800</pubDate><description><![CDATA[<br />很多人都喜欢使用境界，来划分层次。王国维的人生三境界，玄幻小说中的内功三境界。网上有一篇《网络协议的三境界》，但作者只是蜻蜓点水一样，让人意犹未尽。<br /> <br />按照三境界的层次，我对第二层作一个实现。<br /> <br />对于网络TCP或UDP流来说]]></description><category></category></item><item><title><![CDATA[COM接口指针的传递]]></title><link>https://blog.youkuaiyun.com/yingzi80/article/details/6606417</link><guid>https://blog.youkuaiyun.com/yingzi80/article/details/6606417</guid><author>yingzi80</author><pubDate>Thu, 14 Jul 2011 16:49:17 +0800</pubDate><description><![CDATA[COM接口继承时，如果要对接口指针进行传递，必须使用QueryInterface()来进行。 基接口：[ object, uuid(F20D4233-DD50-4B19-9C9A-DDCDDDA12BC6), dual, nonextensible, helpstring("IP]]></description><category></category></item><item><title><![CDATA[使用VC2008创建基于ATL的ActiveX控件，不自动调用OnCreate函数]]></title><link>https://blog.youkuaiyun.com/yingzi80/article/details/6198559</link><guid>https://blog.youkuaiyun.com/yingzi80/article/details/6198559</guid><author>yingzi80</author><pubDate>Mon, 21 Feb 2011 20:58:00 +0800</pubDate><description><![CDATA[<br />打开控件类的构造函数，加入：m_bWindowOnly=true;即可调用OnCreate函数<br />    CTestCtrl()<br />    {<br />        m_bWindowOnly  =  TRUE; <br />    }<br /><br />见http://social.msdn.microsoft.com/Forums/tr-TR/visualcpluszhchs/thread/71e1c78f-4a0d-4a77-a992-528c5c38f763]]></description><category></category></item></channel></rss>