簡體   English   中英

彩色UITextview的自動更正問題

[英]Autocorrect issue with a colored UITextview

我在我的應用程序中使用帶有藍色背景的textview。

啟用自動更正后,無論何時更正單詞,都會在單詞周圍形成一個白框,文本的顏色也會發生變化。

關於如何阻止這種影響的任何想法?

不,我認為你不能改變疊加的顏色或開箱即用的文字顏色..

這是一個很難的,如果你在你的視圖的- (void) layoutSubviews {..}中放置一個斷點,你會看到UIKit在文本上方繪制了一個'UITextSelectionView'...

我試圖將UITextView子類化,以查看它的layoutSubviews是否被觸發,它似乎確實如此!

所以我試圖刪除疊加層:

- (void) layoutSubviews {
    [super layoutSubviews];

    for (UIView *subview in self.subviews) {
        if ([NSStringFromClass([subview class]) isEqualToString:@"UITextSelectionView"]) {
            DLog(@"Subview %@", [subview debugDescription]);
            [subview removeFromSuperview];
            break;
        }
    }
}

它工作..但這導致錯過光標,並禁用任何選擇:(

我想你必須禁用自動更正..

如果有人找到真正的答案,我會重新開始賞金!

這可能有其他副作用我正在調查其他什么叫這個,但在UITextView中覆蓋firstRect(for range)並返回CGrect.Zero刪除突出顯示。

override public func firstRect(for range: UITextRange) -> CGRect {
     return CGRect.zero;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM