내 응용 프로그램의 새 버전을 만들고 있는데, 사용되지 않는 메시지를 대체하려고 시도하고 있지만이 메시지를 처리 할 수 없습니다.drawInRect : withAttributes vs drawInRect : withFont : lineBreakMode : alignment
drawInRect:withAttributes
이 작동하지 않는 이유를 알 수 없습니다. drawInRect:withFont:lineBreakMode:alignment
메시지를 보내면 코드가 제대로 표시되지만 drawInRect:withAttributes
을 보내면 코드가 작동하지 않습니다.
나는 똑같은 rect와 font를 사용하고 있으며, 나는 같은 텍스트 스타일이라고 믿는다. 상수는 이미지 바로 아래에 rect를 위치 시키지만 두 호출에 동일한 rect를 사용하므로 사각형이 정확한지 확신합니다.
은 변수를 사용 CGRect textRect = CGRectMake(fCol*kRVCiPadAlbumColumnWidth,
kRVCiPadAlbumColumnWidth-kRVCiPadTextLabelYOffset,
kRVCiPadAlbumColumnWidth,
kRVCiPadTextLabelHeight);
NSMutableParagraphStyle *textStyle = [[NSMutableParagraphStyle defaultParagraphStyle] mutableCopy];
textStyle.lineBreakMode = NSLineBreakByWordWrapping;
textStyle.alignment = NSTextAlignmentCenter;
UIFont *textFont = [UIFont systemFontOfSize:16];
이 (아무것도 화면에 묘화되지 않음)이 작동하지 않는 행
[bs.name drawInRect:textRect
withAttributes:@{NSFontAttributeName:textFont,
NSParagraphStyleAttributeName:textStyle}];
상기 (밑도는
bs.name가있는 NSString 객체이다)
이것은 위와 같은 변수를 사용하여 작동합니다 (문자열이 화면에서 올바르게 그려 짐).
[bs.name drawInRect:textRect
withFont:textFont
lineBreakMode:NSLineBreakByWordWrapping
alignment:NSTextAlignmentCenter];
도움이 될 것입니다. 감사.
'drawInRect : withAttributes :'가 작동하지 않는다고 말하는 것은 무엇을 의미합니까? –
아주 좋은 질문입니다. 미안하지만 나는 정교하지 않았다. bs.name에 포함 된 문자열은 drawInRect : withFont : lineBreakMode : alignment 메시지를 사용하여 화면에 올바르게 그려지지만 drawInRect : withAttributes 메시지를 사용할 때는 나타나지 않습니다 (아무 것도 그려지지 않음). –