2013-10-27 38 views
0
ListView listView = (ListView) findViewById(R.id.listview); 

這是可以理解的,我如果是像這段代碼語句的RHS做什麼?

ListView listView = new ListView() 

但我不明白的ListView的ListView =(ListView控件)findViewById的RHS(R.id.listview)表示;我知道LHS創建一個名爲listView的引用變量,它將包含對ListView對象的引用。

據我所知,它是通過findViewById()檢索一個視圖並解析到一個ListView對象(一個類型的對象怎樣才能被解析成另一個類型的對象),然後分配一個引用ListView引用變量中的ListView對象? 預先感謝您。

+0

這不是解析的對象,它的鑄造。將一個對象轉換爲另一個對象並將一個對象解析爲另一個對象是完全可能的。考慮'Integer.decode(「3」);' – Simon

回答

1

R.id.listview

在這裏你的XML佈局中的一個你的名字列表作爲 「列表視圖」

Android的ID分配給每一個你配發的名字。 id存儲在R java文件中 它會像

public static final int listview = 0x7f050002;

甚至你可以直接在地方R.id.listview

findViewById(R.id.listview)使用這個int值;

這將告訴您的活動找到一個視圖(其ID存儲爲R.id.listview)

(列表視圖)

您是鑄造你的視圖列表視圖對象

並將其分配給

的ListView

類的ListView