문제

상당한 양의 텍스트가있는 nstextView가 있습니다. 그러나 스크롤 할 때마다보기가 제대로 업데이트되지 않습니다. 보기의 상단 또는 하단에 남아있는 유물이 있습니다. 보기가 자주 새로 고침되지 않는 것 같습니다. 보기가 매우 천천히 스크롤하면보기가 올바르게 업데이트됩니다. 보기에 테두리를 추가하면 모든 것이 완벽하게 작동합니다. 경계없는보기는 문제가있는 것입니다. 스크린 샷 링크는 다음과 같습니다.

감사

도움이 되었습니까?

해결책

당신은 설정 했습니까? setDrawsBackground 그리고 copiesOnScroll 둘 중 하나에 대한 속성 NSScrollView 아니면 그 NSClipView?

내가 제안 할 첫 번째는 NSScrollView:

[myScrollView setDrawsBackground:NO];

이것은 설정해야합니다 NSScrollView, 그리고 ~ 아니다 임베디드에 NSClipView.

다음은 다음에서 발췌 한 것입니다 선적 서류 비치 관련이있을 수 있습니다.

당신의 경우 NSScrollView encloses an NSClipView a setDrawsBackground: 매개 변수가있는 메시지 NO ~로 NSScrollView 전송의 추가 효과가 있습니다 NSClipViewsetCopiesOnScroll: 매개 변수가있는 메시지 NO. 보내는 부작용 setDrawsBackground: 직접 메시지 NSClipView 대신 문서보기에서 스크롤 될 때 "트레일"(이전 그림의 흔적)이 나타납니다.

다른 팁

텍스트 필드가 스크롤 영역에 있지 않은 것 같습니다 ... 무언가가 겹치지 않는 것이 확실합니까?

나는 비슷한 문제가있었습니다 - NstextView가 다른 스크롤 뷰 (예 : nstableView)에 포함될 때 아티팩트가 발생합니다.

나는 실제로 돌렸다 ~에 SetDrawsbackground는 다시 사라지도록 멋진 색상을 추가했습니다.

-(void)awakeFromNib{
    NSScrollView *scroll = [self enclosingScrollView];
    [scroll setBorderType:NSNoBorder];
    [scroll setDrawsBackground:YES];
    [scroll setBackgroundColor:[NSColor windowBackgroundColor]];
}

이것은 스크롤 휠 이벤트와 함께 nstableView에서 nstextView를 사용할 수 있습니다.

-(void)scrollWheel:(NSEvent *)theEvent{
    NSScrollView *scroll = [self enclosingScrollView];
   [[scroll superview] scrollWheel:theEvent];
}

나는 얼마 전에 같은 어려움을 겪었습니다. 어떻게 해결했는지 기억이 나지 않습니다.

수퍼 뷰가 사용자 정의보기 인 경우 nstextView를 다른보기에 배치하십시오. 무슨 일이 일어날 지보기 위해.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top