2016-08-29 38 views
0

我有一個80 ImageView的活動,我必須在我的java文件中添加引用&我這樣做。有沒有什麼方法可以簡化這段代碼。請幫幫我。如何優化這個引用語句findViewById()

iv[0]=(ImageView)findViewById(R.id.iv0); 
iv[1]=(ImageView)findViewById(R.id.iv1); 
iv[2]=(ImageView)findViewById(R.id.iv2); 
iv[3]=(ImageView)findViewById(R.id.iv3); 
iv[4]=(ImageView)findViewById(R.id.iv4); 
iv[5]=(ImageView)findViewById(R.id.iv5); 
....... 
iv[79]=(ImageView)findViewById(R.id.iv79); 
+2

爲什麼您的活動有80圖像瀏覽? –

回答

3

一個簡單for循環會在這種情況下是合適的:

for (int i = 0 ; i < iv.length ; ++i) { 
    int resourceId = this.getResources().getIdentifier("iv" + i, "id", this.getPackageName()); 
    iv[i] = (ImageView) findViewById(resourceId); 
} 

但優化代碼。使用RecyclerView並在適配器中顯示您的圖像。 按照你的方式,你肯定會得到OutOfMemoryError的。

1

不這樣做!由於浪費時間和性能問題。 您可以使用listView或網格視圖來顯示80個圖像。