李程站 发表于 2013-2-4 02:17:07

iPhone文本切页代码案例实现

iPhone文本切页代码案例实现是本文要介绍的内容,主要是来学习文本是如何来切页的,本文主要是基于代码实现内容,来看具体实现代码。

[*]//!如果不是HTML,可以把</p>改为n或者rn
[*]-(NSString *)doPagination:(NSString *)pageContent pageNumber:(NSInteger)number
[*]                                 fontSize:(NSInteger)size lineHeight:(NSInteger)lheight pageHeight:(NSInteger)pheight
[*]                                  pageWidth:(NSInteger) pwidth{
[*]    UIFont *tfont=;
[*]    CGFloat singleHeight=[@"中" sizeWithFont:tfont constrainedToSize:CGSizeMake((float)pwidth, 9999.0)
[*]                        lineBreakMode:UILineBreakModeCharacterWrap ].height;
[*]    NSInteger maxline_per_page=(int) (pheight/singleHeight);
[*]    NSArray *paragraphSplit=;
[*]    NSString *breakString=@"nn";
[*]    NSString *contentTrim;
[*]    NSInteger totalLines=0;
[*]    NSMutableString *tempString=;
[*]    NSString *leftString;
[*]    CGSize csize;
[*]    NSMutableArray *bookPages=;
[*]    for (NSString *para in paragraphSplit){
[*]      contentTrim=;
[*]      csize=[contentTrim sizeWithFont:tfont constrainedToSize:CGSizeMake((float)pwidth, MAXFLOAT)
[*]            lineBreakMode:UILineBreakModeCharacterWrap ];
[*]      totalLines+=(int)(csize.height/singleHeight);
[*]      leftString=contentTrim;
[*]      if (totalLines > maxline_per_page){
[*]            totalLines-=(int)(csize.height/singleHeight);
[*]            for(int i=0;i<;i++){
[*]                NSString *calcString=;
[*]                csize=[calcString sizeWithFont:tfont constrainedToSize:CGSizeMake((float)pwidth, MAXFLOAT)
[*]                                    lineBreakMode:UILineBreakModeCharacterWrap ];
[*]                totalLinestotalLines=totalLines+(int)(csize.height/singleHeight);
[*]                if (totalLines>maxline_per_page)
[*]                {
[*]                  i--;
[*]                  if (>0) -1)]];
[*]                  if (i>0) leftString=; else leftString=@"";
[*]                  autorelease]];
[*]                  totalLines=(int)([leftString sizeWithFont:tfont constrainedToSize:CGSizeMake((float)pwidth, MAXFLOAT)
[*]                     lineBreakMode:UILineBreakModeCharacterWrap ].height/singleHeight);
[*]                  ;
[*]                  break;
[*]                }
[*]                else totalLinestotalLines=totalLines-(int)(csize.height/singleHeight);
[*]            }
[*]      }
[*]      ;
[*]    }
[*]    autorelease]];
[*]    self.bookContent=;
[*]    return ;
[*]}
小结:iPhone文本切页代码案例实现的内容介绍完了,希望通过本文的学习能对你有所帮助。
【编辑推荐】

[*]iPhone开发从菜鸟到老鸟学习文档
[*]iPhone编程添加递进式子视图实例学习
[*]iPhone开发应用关于界面学习
[*]详解iPhone开发之消息通信机制NSNotificationCenter
[*]iPhone开发中使用NSOperation实现异步下载
[*]iPhone开发应用关于国际化案例实现
页: [1]
查看完整版本: iPhone文本切页代码案例实现