텍스트보기가 있고 인터넷에서 들어 와서 인쇄 중이었지만 텍스트보기보다 더 많은 색을 원했습니다.내 첫 번째 사용자 지정보기가 스크롤되지 않습니다
나는 scrollview로 textview를 대체하고 viewdidload에서 필자는 내 view 클래스를 attach하려고 시도했다.
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
_myconsoleview = [[ConsoleView alloc] initWithFrame:[self._scview bounds]];
[_myconsoleview setBackgroundColor: [UIColor yellowColor]];
[self._scview addSubview:_myconsoleview];
[self._scview setNeedsDisplay];
}
글자가 스크롤되지 않았습니다. 텍스트를 마우스로 드래그하여 스크롤 막대를 찾았습니다.
그래서이 예제 핵심 텍스트 프로그램에서는 오 스크롤이 쉽습니다. 내 사용자 정의보기 (ConsoleView)가 스크롤보기 자체를 상속합니다. 그래서 이것을 시도해 이것을 지금 추가하십시오 :
@interface ConsoleView :UIScrollView<UIScrollViewDelegate>
아직 스크롤링이 없습니다. 스크롤 막대가 없습니다. 아니 표시 및 나는 지금까지, 어떤 종류의 스크롤 ipad 시뮬레이터를 사용하고 있습니다. ConsoleView에서 나는 매우 세련된 무언가를하고 싶다.하지만 지금은 하나의 문자열 만 출력하고있다. 그러나 문자열은 내가 추가 할 때 더 많은 텍스트를 얻을 때 더 길어집니다.
나는 내 sendtext 방법에서 이것을 시도했다.
[myconsoleviewid addNewText:newText];
[_scview scrollRectToVisible:[_scview bounds] animated: TRUE];
[_scview setNeedsDisplay];
솔직히 내가 일하는 것이 위의를 주장 할 수있는 확실하지 오전하지만 난 뭔가가 작동하지 않을 수 있습니다 생각 : 그들은 서버에이 텍스트 필드에 입력 한 텍스트를 보낼 수있는 버튼을 누르면 때이 안타. 어떤 아이디어? 나는 약 2 개월 전에 프로그래밍을 시작한 ios 프로그래밍에 상당히 익숙하며 지금까지 계속해서 작업을 해왔다. 자바 또는 안드로이드에서는 스크롤을 콘솔에 추가하는 것이 스크롤 컨트롤에 추가하는 것보다 훨씬 더 많은 것처럼 보이지 않습니다. 그러나 IOS는 더 까다로워 보인다.
마이크
편집. 이것은 길이가 길어지는 문자열을 출력한다고 가정하는 그리기 직사각형입니다. 그것에서의 consoleview :
- (void)drawRect:(CGRect)rect
{
[super drawRect:rect];
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetTextMatrix(context, CGAffineTransformIdentity);
CGContextTranslateCTM(context, 0, self.bounds.size.height);
CGContextScaleCTM(context, 1.0, -1.0); CGMutablePathRef path = CGPathCreateMutable(); //1
CGPathAddRect(path, NULL, self.bounds);
CTFramesetterRef framesetter =
CTFramesetterCreateWithAttributedString((__bridge CFAttributedStringRef)attString); //3
CTFrameRef frame =
CTFramesetterCreateFrame(framesetter,
CFRangeMake(0, [attString length]), path, NULL);
CTFrameDraw(frame, context); //4
CFRelease(frame); //5
CFRelease(path);
CFRelease(framesetter);
}
전체 스크롤보기 내용 크기를 20000 세로로 설정하면 황색 배경이 한 페이지에서 멈추므로 잘못된 것으로 보입니다. 스크롤 뷰에서 2000 세로를 좋아하는 내보기를 설정하면 스크롤하여 내 노란색 배경을 볼 수 있지만 내보기는 지속되지만 텍스트는 페이지 1의 마지막 줄 뒤에 계속 표시되지 않습니다. – LanternMike
나는 대답을 받아 들일 수 없다는 것을 알았다. 나는 핵심 텍스트 코드를 변경했지만, 여전히 스크롤 문제로,이 트릭을 발견했다. 적어도 하나는 더 크고,이 대답을 받아 들인다. – LanternMike