我有一個ArrayList活動,我也擴展了視圖,活動和視圖是在分離的類。ArrayList動態改變?
public class activity extends Activity{
private ArrayList<customObject> ar = new ArrayList<customObject>();
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
drawview = new DrawView(this,ar);
setContentView(drawview);//more code
}}
正如你看到我傳遞給draview的構造我的活動,所以我可以處理的ArrayList has.i的對象的ArrayList了ArrayList中的相同名稱的兩個類。(如果該事項.. 。)
class DrawView extends View {
private ArrayList<customObject> ar;
public DrawView(Context context,ArrayList<customObject> a) {
super(context);
this.ar=a;
}
//more code
}
而且現在非常非常非常奇怪的事情....據我瞭解Java是按值調用,所以我不能真正傳遞的內存段在哪裏存儲我的數組列表...所以drawview可以看到的唯一值就是我在構造函數上傳遞的值....但是當我在Activity的ArrayList中添加值時,值也是視圖的aaraylist! 這是怎麼回事?爲什麼會發生這種情況......我很困惑......
上面的代碼也適用於一個數組,所以我想這個和數組通過引用傳遞....對吧? – stelios 2011-02-01 00:08:17