我正在尋找一種方法,允許我訪問另一個類的對象; 這兩個類都在同一個Android活動 - OpenStreeMapActivity.java中。我有:如何從另一個類訪問對象(例如ArrayList)?
ItemizedOverlay.java - 包含我想訪問和修改對象:
private ArrayList<OverlayItem> mOverlays = new ArrayList<OverlayItem>();
BalloonOverlayView.java - 就是我想要訪問的對象mOverlays:
protected void setupView(final Context context, final ViewGroup parent) {
LayoutInflater inflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View v = inflater.inflate(R.layout.balloon_overlay, parent);
title = (TextView) v.findViewById(R.id.balloon_item_title);
snippet = (TextView) v.findViewById(R.id.balloon_item_snippet);
// Get ballon_close button and register its listener:
ImageView close = (ImageView) v.findViewById(R.id.balloon_close);
close.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
parent.setVisibility(GONE);
Intent intent = new Intent();
intent.setClassName("org.example.openstreetmap", "org.example.openstreetmap.UpdateEntityActivity");
v.getContext().startActivity(intent);
//HERE I return from UpdateOverlayActivity.java and is where I want to modify *mOverlays*.
}
});
}
編輯:我發現這是不正確的,我回到//這裏。
你不能傳遞對象mOverlays的方法setupView函數的參數?如果沒有,你仍然可以在調用setupView之前將它分配給BalloonOverlayView類的公共屬性,對嗎? –