2014-03-07 94 views
4

我得到了一些從Json文件創建的EditText字段。所以我無法更改XML文件。但我想要一些EditText字段有輸入類型「密碼」。我正在使用C#在Xamarin Studio中工作。Xamarin C#EditText輸入類型密碼

我得到了這樣的東西,但這不起作用,我該如何解決這個問題?

editText.InputType = InputTypes.TextVariationPassword; 
+0

當你說「但那不行」時,你是什麼意思?解釋一下,我們可以幫助你。 –

+1

editText中的文本只是文字,不是***。 –

回答

14

試試這個:

editText.InputType = Android.Text.InputTypes.TextVariationPassword | 
          Android.Text.InputTypes.ClassText; 

編輯:還有一些興趣(即票)在這個答案後,現在2年,所以我想通過出血的要求增加一個解釋手指在他的評論下面。我希望它能幫助別人。

在許多其他語言/平臺(例如HTML)中,您只需將控件設置爲password即可。這就是OP想要做的,但Android的設計不同(而且很奇怪,恕我直言)。它將旗標分爲類別變體。您必須先選擇課程(例如ClassText),然後應用所需的變體(例如TextVariationPassword)。如果您只設置變體,Android不知道您想要什麼課程。例如,你可以有一個文本密碼TextVariationPassword(所以你把它與文本類ClassText),或者你可以有一個數字密碼NumberVariationPassword(所以你把它與號碼類ClassNumber)。

現在所有解釋都開始有意義,除了有人可能會問的問題:Android可不能簡單地從變體中推斷出類,所以我們不必指定冗餘的東西?對於上面的簡單例子來說,這非常簡單,但是將幾個標誌設置爲一個控件會變得更加複雜。然而,我個人認爲它比當前的冗餘設計相對容易實現並且更好,這讓許多開發人員感到意外。

+2

解釋爲什麼這是通過編輯答案。 –

+1

@BedingedFingers他們說**遲到比從未更好**,所以我只是在2年後按照你的要求添加了一個解釋:-)。 –