2013-10-28 79 views
7

這是更多'是否有更合適的方式'的問題,因爲我找到了解決辦法。對textView禁用「拼寫檢查」

我的一些表格標題被拼寫錯誤和紅色標出。當然,那不是我想看到的。我發現使用

android:inputType="textNoSuggestions" 

確實會禁用拼寫檢查標記。我覺得很奇怪(錯誤?),這是必要的,因爲文檔狀態:

的inputType:該類型的數據被放置在一個文本字段,用來幫助 輸入法決定如何讓用戶輸入文本。

並且沒有與textView關聯的輸入。所以這是避免拼寫檢查的唯一/更合適的方式,而且,這是一個錯誤,它拼寫檢查非輸入字段?

UPDATE:每個請求,這是樣本XML

<TextView 
     android:text="ID#" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:typeface="monospace" 
     android:textSize="14sp" 
     android:digits="4" 
     android:textAlignment="gravity" 
     android:layout_weight="5" 
     android:gravity="left" 
     android:singleLine="true" 
     android:phoneNumber="true" 
     android:inputType="textNoSuggestions|none"> 

</TextView> 
+0

你在所有設備上看到這種行爲,還是隻有一些? –

+0

Emulator ..尚未安裝在現場設備上。也許這只是一個模擬器問題? – TrustNoOne

+0

如果您有其他設備可以使用它,我會的。我無法想起以前看過拼寫檢查在TextView上做它的事情。 –

回答

4

首先,我會嘗試刪除android:digitsandroid:phoneNumberandroid:inputType屬性。

所有這些更適合用於允許輸入的字段(例如EditTexts)。它看起來並不像正在使用android:digits屬性,因爲您提供的字符串定義了唯一允許的字符。

實質上,這些屬性組合告訴Android,您的TextView接受的電話號碼格式僅包含數字4,此TextView不接受任何類型的輸入,Android不應提供拼寫檢查建議。

如果您自己設置TextView的內容,那麼確實沒有理由試圖通過標記(如android:phoneNumber)來限制TextView的內容,因爲您是控制該標記的標記。

+0

很好的結果,不知道這些結果如何在那裏結束,因爲我根本沒有在應用程序中的電話號碼 - 可能在IDEA佈局設計器中意外勾選了一個框。
進一步看,任何與輸入字段樣式相關的項目都會觸發拼寫檢查。我剛剛嘗試了一個android:capitalize =「characters」,它不是inputType組的一部分。 – TrustNoOne

+1

刪除android:inputType適用於我。在我的情況下是沒有必要的 – Vikram

1

我知道這是一個古老的線程,但除去從內容的XML以下爲我工作:

android:autoText="true"