2012-11-09 78 views
3

在以下代碼片段中,(EditText)的含義是什麼?在android中難以理解java代碼

EditText editText = (EditText) findViewById(R.id.edit_message); 

我明白,這是類的EditText的新實例的聲明...

但我很困惑與(EditText)一部分?這是什麼意思 ?

+0

這是一個班級演員。在繼續使用Android之前修改您的Java概念,這將使您的工作更輕鬆。 – Orlymee

回答

2

findViewById方法返回一個View對象並使其成爲它代表的EditText對象必須以此方式進行投射。實際上,你想用的EditText實例來工作,而不是View,使您可以訪問的EditText

EditText editText = findViewById(R.id.edit_message); 

特定屬性上面的代碼將是無效的EditTextView是不一樣的,所以它需要被施放/轉換。

2

它是一個明確的類類型轉換:由findViewById()返回的通用視圖對象被轉換/轉換爲EditText對象。

(EditText) findViewById(R.id.edit_message); 
2

EditText是一個android類,它表示應用程序的用戶界面上的編輯字段。在目前的情況下,它看起來好像您已經在您的活動的xml中定義了一個edittext字段,並且您現在正在獲取對它的引用,以便您可以使用該類上的方法以編程方式與它進行交互。

你可以看到一切,你可以用它做:Android Developer: EditText

如果您沒有將其轉換爲EditText你只能夠處理它作爲一個視圖Android Developer: View