次のコードを使用して、カスタム ビューにテキストを描画しています。
- (void)drawProgramDescription:(CGContextRef) context {
UIGraphicsPushContext(context);
// get string from dataSource
NSString *programDescription = [self.dataSource giveDescriptionOfProgram:self];
// convert string to a C string
const char *programDescriptionCString = [programDescription
cStringUsingEncoding:kCGEncodingMacRoman];
CGContextSelectFont(context, "Helvetica", 1, kCGEncodingMacRoman);
// draw it
CGContextShowTextAtPoint(context, 20, 20, programDescriptionCString,
sizeof(programDescriptionCString) + 1);
UIGraphicsPopContext();
}
このメソッドはdrawRect
、カスタム ビューにテキストが表示されるように、メソッドで呼び出されます。
ただし、問題は、既に別の反復にある場合でも、に入れられる文字列のサイズCGContextShowTextAtPoint
が固定されているように見えることです。drawRect
たとえば、最初に表示されるテキストが次の場合:
X*X
そして、2回目に drawRect が呼び出されたときに、テキストを描画する必要があります
sin(X)
テキストが完全に表示されず、代わりにテキストが切り取られます
sin(
drawRect の最初の繰り返しの元のサイズのままです。
これは の機能CGContextShowTextAtPoint
ですか? または、何か不足していますか?
ありがとうございました!