2010年8月22日 星期日

android findViewById()

findViewById() 這個函式

"Finds a view that was identified by the id attribute from the XML that was processed in onCreate(Bundle)."

也就是只能抓到一開始在onCreate(Bundle)函式中設定的 xml layout

EditText str1=(EditText)textEntryView.findViewById(R.id.username_edit);
EditText str2=(EditText)textEntryView.findViewById(R.id.password_edit); 
String m_username=str1.getText().toString(); 
String m_password=str2.getText().toString();

Java == 與 equal

1.= =

測試物件參考時,唯有當兩個參考指向同一物件時,==運算子的結果才為true,同樣的,唯有當兩個參考指向不同物件時,!=運算子的結果才為true,這兩個運算子的處理與物件的內容無關。需要特別注意的是,在String中使用==,因為Java為節省記憶體,會在某一輪調區中維護唯一的String物件,所以如果在類別裡使用同一字串,Java只會建立一個唯一的字串而已。

2.equals

另一種測試的做法是equalsequals在類別為Java原先就存在時,是比較兩個物件是否為相同類型的類別後再比較其內容值是否相同,是就傳回true,否就傳回false。當要測試的類別是自定類別時,要依自定類別所提供的equals來決定如何比較,如果自定類別沒有覆蓋Objectequals類別的話,就以Objectequals來比較,Objectequals的比較方式如同 = =