2012-08-31 100 views
6

我在我的應用程序一個EditText,將顯示光標在正確的Froyo或薑餅,但是在後來的SDK光標是不可見的。我在網上找到的解決方案是設置android:textCursorDrawable =「@ null」,以便edittext將使用光標的字體顏色。但是,由於我的minsdkversion是8,我無法訪問該屬性。的Android EDITTEXT光標不可見

是他們的任何一種方式來選擇性地添加基於你在SDK中的財產?或者可能是解決這個問題的方法,這樣我就可以在舊版本和新版本的sdk版本上看到可見的遊標了。

+1

你不能使用不同的佈局文件夾上述版本'Gingerbread'讓您設定的財產? – Luksprog

+0

@Luksprog這可能是我所能看到的最簡單的方法。 –

+0

@Luksprog你介意發表一個例子嗎? – Michaeldcooney

回答

3

我不知道您當前的設置,但使用該屬性的一種方式是使用基於各種Android版本的不同佈局文件夾。 android:textCursorDrawable是API 12推出,所以你可以像layout-v12將用於其中的API爲12或更大的佈局文件夾的屬性。在該文件夾的佈局中,該屬性的使用是有效的。 對於較低的版本,FroyoGingerbread,你沒有任何問題,因此會使用默認文件夾,layout。最後,你將有兩個佈局文件夾(包含相同的佈局文件):

layout // don't need the property 
layout-v12 // use the property 

這省去了API 11,我不知道這對你是一個大忌。

+0

謝謝,那就是我需要的! – Michaeldcooney

+0

這不起作用,因爲eclipse仍然會抱怨mtsdk版本具有無效屬性的layout-14佈局。 –

+0

@timT我沒有得到那個錯誤。確保你有最新的更新。 – Luksprog

0

試試你targetSdkVersion設置爲API級別13或更高,以獲得進入Android:如果你不是有一個光標我想輸入簡單textCursorDrawable財產

+0

我的targetSdkVersion是16 – Michaeldcooney

0

,說你只能在年底進入新的字符文本?

我想你可以使用一個TextView,並把它添加你自己的KeyListener? 但在這種情況下,你有虛擬鍵盤問題不被顯示,看到一些這樣的鏈接:

Forcing the Soft Keyboard open

android force keyboard visible

或創建您自己的鍵盤,如果有效密鑰的取值範圍是非常限制爲只有數字。