• 强迫UIView以某种方向显示的秘诀

    我有一个项目其中某些UIView必须以特定的方向(Portrait或者Landscape)显示。这个看似简单的问题,困惑了我很久,直到今天我才完全找到解决的方法。
    读文章 »

     
  • presentModalViewController显示半透明UIView

    很多时候我们需要使用presentModalViewController来显示Modal View。如果需要显示半透明的Modal View应该怎么办呢?当然可以自己创建一个半透明的UIView,然后模拟presentModalViewController的动画效果。

    不过iOS 4以后的版本再也不需要怎么麻烦了,有一个非常简单的方法,示例如下(这段代码运行于一个View Controller中):

    1
    2
    3
    4
    5
    6
        UIViewController* transparentView = [[UIViewController alloc] init];           

           UIViewController* controller = self.view.window.rootViewController;
           transparentView.view.backgroundColor = [UIColor clearColor];
           controller.modalPresentationStyle = UIModalPresentationCurrentContext;        
           [controller presentModalViewController:transparentView animated:YES];

    其要点就是使用iOS特有的rootViewController来显示Modal View。

     
  • 怎样使UISearchBar背景透明

    在使用UISearchBar时,将背景色设定为clearColor,或者将translucent设为YES,都不能使背景透明,经过一番研究,发现了一种超级简单和实用的方法:

    1
    [[searchbar.subviews objectAtIndex:0]removeFromSuperview];

    背景完全消除了,只剩下搜索框本身了。

     
  • Navigation-Based应用程序iPad模板

    准备为iPad写一个Navigation-Based程序,却发现XCode 3.2中根本没有iPad的Navigation-Based程序的模板。Apple推荐在iPad下使用Split-View程序,但我并不想这样做,原因是我的iPad程序以后可能要放到iPhone中去,所以我需要一个Universal版。如果我在iPad下使用Split-View,那么这两个版本相差太大,所以我觉得都使用Navigation-Based程序。


    试了半天想修改iPhone的Navigation-Based程序的模板到iPad下,却没有成功,在网上搜了一下,终于找到一个别人做好的。下面是下载地址。可以使用如下命令将其加到XCode的模板中:

    mkdir -p “$HOME/Library/Application Support/Developer/Shared/XCode/Project Templates/My Templates”

    cd “$HOME/Library/Application Support/Developer/Shared/XCode/Project Templates/My Templates”

    git clone git://github.com/benellingson/Universal-Navigation-based-Application.git

    rm -rf “Universal-Navigation-based-Application/.git”



    或者下载zip文件,在创建了目录后,将zip解压其下。

     
  • iPad 编程教程 – Hello World++

    概述


    随着iPad的发布,我想很多人开始绞尽脑汁试图在新一轮的“淘金热”中抢占一块市场。iCodeBlog将推出一系列iPad教程帮助大家。


    由于iPad使用iPhone同样的SDK,所有代码看上去完全一样。实际上,看看最新和修改了的API类,你就会发现大部分是有关用户界面的。这是一个好消息,因为我们都对iPhone编程有了一定的经验。


    此教程被称为“Hello World”,实际上它远远不止这些。首先,我假定你们已经具有iPhone/Objective-C的编程经验。


    读文章 »

     
  • 开始学习iphone编程之六 – 简单示例代码

    下面有一些iPhone OS 3.0的范例代码。这些代码都是没有使用Interface Builder的。作为初学者,用这种方法可以更清晰的知道程序是怎样创建用户接口的。

    读文章 »

     
  • iPhone 3.0新特性系列教程之一 – 使用UIPasteboard复制/粘帖

    今天的主题是怎样读/写粘帖板。

     

    读文章 »

     
  • 在UIAlertView中加入UITextField

    Screen shot 2009-11-09 at 8.12.11 AM copy

     

    这个简单的教程将介绍怎样在UIAlertView中加入UITextField。它只包括几行代码。你将学到CGAffineTransform和UITextField编程。

     

    读文章 »

     
  • UILabelz子类 – 随意对齐文本

    有人问到怎样正确地对齐UILabel的文字。他们需要UILabel容纳多行文本,但也需要调整文本,他们遇到的问题是单行文本在垂直方向总是居中对齐。 

     

    读文章 »

     
  • 不用Interface Builder的iPhone项目

    有初学iPhone编程的朋友问我,不用Interface Builder可以编写iPhone程序吗?答案当然是:可以。

     

    Interface Builder是一个用户界面工具,功能强大。不过对比其他一些界面建造工具如.net,Java,VB,甚至是wxWidget的界面工具,它不太直观。所以新手有可能觉得不太好用。(我觉得Interface Builder与其他一些界面工具最大区别是,它不直接产生代码)。不过如果仅仅是因为这个原因,而你又想成为iPhone编程高手,特别是编写一些非游戏类程序,我的建议是读一些有关Interface Builder的教程或书籍,掌握Interface Builder是必须的。当然,游戏游戏有自己的界面,不需要使用Interface Builder。
    读文章 »