刚刚将新的阅读博客园提交apple,等待审核,主要解决了以下问题:

1.文本阅读模式字号调整到适合手机阅读。 
2.美工细化,界面更美观。 
3.程序结构调整,整体更流畅。

先看看0.2的界面吧!

哎,说句题外话,看到我的手机信号没?都是台风惹的祸,把安装在家里的信号放大器刮掉了,报修到今天还没有弄好!

好了,言归正传,继续说0.2的改进。其实最大的改进是第一条:文本阅读模式字号调整到适合手机阅读。

我借用了HTML的知识,把从博客园读下来的RSS内容直接拼接成了一个标准的网页,并在Head头加上了控制缩放的代码实现。

下面就是代码,这行代码可以取消在UIWebView控件中缩放功能:


<meta content="width=device-width; initial-scale=1.0; maximum-scale=1.0; minimum-scale=1.0; user-scalable=false;"
        name="viewport">

在安卓上同样使用的时候发现不能禁止其浏览器缩放,看来只能控制iOS。

关于字体的大小控制,我使用em控制而不是px,这样更好控制。

美工方面的改变就不在这里啰嗦了,这是美工的事情,找个美工都能搞定,在这里就贴上0.1版的界面做个对比吧!

程序结构的调整,先贴上我的程序文件结构图

原来使用Navigation Controller是在RootViewController里面,造成了进入单个频道页面时返回按钮变成了没有向右箭头的那种(如0.1版界面图2),而且切换效果不一致,是消失而不是滑出。

学习iphone开发这段时间买到的书,看到的网上的文章都是Xcode3.X的,当使用Xcode4时问题就会出来了,变化还是蛮大的。所以0.1版就在结构上变成个混合体。

其实对于Xcode4,可以理解成从VS2003到VS2005的改变,首先IB被整合到了一起,所以不用来回切换。另外很多功能确实可以不用代码而是在界面完成。在0.2版本中,我的改变就是注释掉代码,在界面完成工作。这些工作依旧可以通过代码来实现,和.net的一样的,在这里我就不说代码了,到网上一搜很多的,这里说说直接在界面完成。

看看我的MainWindow.xib结构和主要的属性设置

如果所示,在Window里面我增加了一个Navigation Controller,然后将里面的View Controller的Custom Class改为了我自己建的RootViewController,然后Xcode会自动将View Controller改为Root View Controller,这里Xcode还是比较智能的。好了之后就只需要将Window中的rootViewController和Navigation Controller链接就可以了。这样的操作等于在代码中写rootViewController=??或者addsubView()。这样我的程序就注释掉了如下代码:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    // Override point for customization after application launch.
    
    //self.rootViewController.view = _rootViewController.view;
    
    [self.window makeKeyAndVisible];
    
    return YES;
}

接下来,整个程序使用Navigation Controller作为整个程序导航器,使用如下代码完成参数传递和推入界面:

    ChildrenChannel *childrenChannel=[[ChildrenChannel alloc] init];
    [childrenChannel setEntity:entity];//传入参数,方法自己在类里面写
    [self.navigationController pushViewController:childrenChannel animated:YES];//推入新界面

类似的操作也可以方便程序的快速编写,这里以后肯定也有争论,如同.net中使用不使用用户控件,但是对新手而言可以快速建立程序,也可以避免一些错误。而且比较直观。但是还是要弄清楚原理,这里推荐宝玉写的文章:基于Xcode4开发第一个iPhone程序:“Hello World” 第二个iPhone应用程序:“Say Hello” ,里面有很好的简介。

最后,关于里面的一些小技巧,总结放到最好,大家可能对这些更感兴趣,呵呵

一、改变UINavigationBar的背景:

@implementation UINavigationBar(CustomImage)

-(void)drawRect:(CGRect)rect
{
    UIImage *backgroundImage=[UIImage imageNamed:@"Background.png"];
    [backgroundImage drawInRect:CGRectMake(0, 0, self.frame.size.width, self.frame.size.height)];
}

@end

切记放到主delegate的后部,不要放置在类里面。

二、改变UINavigation标题为图片:

    //设置标题Image
    
    UIImageView *titleView=[[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 320, 40)];
    [titleView setImage:[UIImage imageNamed:@"IndexLogo.png"]];
    self.navigationItem.titleView=titleView;

三、日期时间的转换(这个我想吐槽,比起.net,这个太麻烦了):

    NSDateFormatter *dateFormatter=[[NSDateFormatter alloc] init];
    [dateFormatter setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"]];
    [dateFormatter setDateFormat:@"eee, dd MMM yyyy HH:mm:ss ZZZ"];
    
    NSDate *date=[dateFormatter dateFromString:[self getStringByTag:@"pubDate" Index:[indexPath row]]];
    
    
    NSDateFormatter *dateToStringFormatter=[[NSDateFormatter alloc] init];
    [dateToStringFormatter setDateFormat:@"发布时间:yyyy-MM-dd HH:MM"];
    NSString *nsDate=[dateToStringFormatter stringFromDate:date];
    
  

最后希望大家多看看Xcode的帮助文档,虽然是英文的。例如现在提交程序,可以直接通过Xcode4进行,不需要单独使用Application Loader提交。

一般审核会在一周内完成,至于审核的问题大家看看apple的审核文档。在这里,app store是不能提交beta版本的,我在这里犯错了。

等待0.2的审核通过……

阅读博客园 iphone应用程序(非官方)

app stroe 地址:
http://itunes.apple.com/cn/app/id454973243?mt=8

posted @ 2011-08-13 18:32 提示符 阅读(1635) 评论(8) 编辑

阅读博客园 iphone应用程序发布(非官方)!

app stroe:
http://itunes.apple.com/cn/app/id454973243?mt=8

受限于博客园RSS订阅源20、10条的限制,只能查看最新的20、10条信息。

posted @ 2011-08-10 11:37 提示符 阅读(425) 评论(4) 编辑

[dateFormatter setLocale:[[NSLocale allocinitWithLocaleIdentifier:@"en_US"]];

 

原因:为dateFormatter增加Locale就可以了。

posted @ 2011-07-27 18:15 提示符 阅读(69) 评论(0) 编辑

 NSDateFormatter *dateFormatter=[[NSDateFormatter allocinit];

    [dateFormatter setDateFormat:@"eee, dd MMM yyyy HH:mm:ss ZZZ"];

    

    NSDate *date=[dateFormatter dateFromString:{需要转化的字符串}];

    

    

    NSDateFormatter *dateToStringFormatter=[[NSDateFormatter allocinit];

    [dateToStringFormatter setDateFormat:@"发布时间:yyyy-MM-dd HH:MM"];

    NSString *nsDate=[dateToStringFormatter stringFromDate:date];

posted @ 2011-07-27 12:59 提示符 阅读(119) 评论(0) 编辑
image

 

开始成功使用Windows Live Writer 2010发布日志了。

微软的东东还是不错的。

posted @ 2010-10-01 18:09 提示符 阅读(89) 评论(0) 编辑
摘要: 为什么进行需求控制?需求如何控制?阅读全文
posted @ 2009-05-17 01:21 提示符 阅读(1513) 评论(2) 编辑
摘要: 很久没有在博客园写随笔了,今天补上,O(∩_∩)O哈哈~。需求到底是什么?特别是对于软件开发来说,需求是最为关键也是一个项目能否成功的判定标准,然而,正式这个标准,让需求背负了太多的东西。为什么从CRM定义想到需求到底是什么这个问题,只是因为最近项目做的是CRM,对CRM的定义,似乎就是原始的需求意向,然而就是这个定义,却更让需求无所适从。CRM:客户关系管理系统。关键字:...阅读全文
posted @ 2009-03-14 02:33 提示符 阅读(1917) 评论(7) 编辑
摘要: 自作多情想把sql里面的Float转化成.net里面的float(System.Single)结果报错。后来仔细查查才知道忽视了细节 BigInt Int64。64 位的有符号整数。 Binary Byte 类型的 Array。二进制数据的固定长度流,范围在 1 到 8,000 个字节之间。 Bit Boolean。无符号数值,可以是 0、1 或 nullNothingnullptrnull 引用...阅读全文
posted @ 2008-07-26 22:57 提示符 阅读(340) 评论(0) 编辑
摘要: 还记得大一大概就是这段时间进入的千寻制作团队实习,一个月后离开。在千寻,自己给团队带来的麻烦似乎到现在还历历在目,我留给千寻的就是麻烦吧。而千寻给我的经验和理念,却让我受用了很久。直到现在我都不得不承认现在所学到的东西还不及那次短短一个月的千寻经历。原来千寻团队中的成员现在大概还在的只有一个人了。也是上次请教这个曾经做过我师傅的人技术方面问题后问及才得知的——只有他那个时候还留在千寻,而现在,又几...阅读全文
posted @ 2008-07-15 22:03 提示符 阅读(444) 评论(0) 编辑
摘要: DECLARE @path NVARCHAR(2000)SET @path = '【绝对本地路径】\【要备份的文件名】(' + CONVERT(NVARCHAR(4), DATEPART(YEAR, getdate())) + '-' + CONVERT(NVARCHAR(2), DATEPART(MONTH, getdate())) + '-' + CONVERT(NVARCHAR(2), DA...阅读全文
posted @ 2008-06-28 22:08 提示符 阅读(542) 评论(0) 编辑