iPhone上的简单文本呈现(不是UIWebView)

时间:2010-08-11 05:53:05

标签: iphone text render

是否有任何简单的方式将格式化文本(从char *缓冲区)渲染到显示...? 我的意思是,简单....在C或C ++甚至Java中,在几乎任何平台上,包括嵌入式,您都可以获得指向帧缓冲或显示的指针,并渲染简单的文本或像素,其中包含2或3,5个最大行代码......

我一直在寻找网络(以及iphone开发书籍),但我还没有看到 任何文本渲染到显示器,而不通过整个主机“UI~thing~Views”在屏幕上放置几行文字......

请告诉我,我错了,有一种非常简单的方法来呈现文字,没有什么花哨,只有两三行普通的旧ascii文字,没有花里胡哨,只有黑白文字...... / p>

像: void my_callback() {   Global_Pointer_to_screen(X,Y,数据); }

谢谢!

2 个答案:

答案 0 :(得分:1)

使用UILabel呈现文字。没什么好看的:

NSString *myString = [NSString stringWithCString:myCString encoding:NSUTF8Encoding];
UILabel myLabel = [[UILabel alloc] initWithFrame:CGRectMake((self.bounds.size.width/2), 0.0, 100.0, 50.0) ];
[self addSubview:myLabel];
myLabel.text = myString;

上面的代码实际上并不难实现。我不确定你为什么要直接写入显示缓冲区。我甚至不确定你能做到这一点。除非你使用OpenGL,否则我很确定Apple没有提供这样做的方法。即便如此,据我所知,你无法获得指向显示器的指针并使用指针写入图形存储器。

我强烈建议你学习UIViews并以正确的方式去做。

答案 1 :(得分:0)

您可以在drawRect中使用UILabel:将格式化的字符串绘制到特定位置,您只需设置框架并在标签上手动调用drawRect。

或者您也可以使用Quart2D将文本渲染到显示器:

http://developer.apple.com/mac/library/documentation/GraphicsImaging/Conceptual/drawingwithquartz2d/dq_text/dq_text.html

正如您所看到的,您有多种方法可以配置您正在绘制的文本。

但是大多数人在InterfaceBuilder中简单地制作UILabel然后它们会在屏幕上显示。

在iOS4.x +中,您可以使用NSAttributedString来执行真正的格式化文本。但它非常复杂。