我有两个类,MainActivity.java和ImageAdapter.java我在这个主要活动中声明了游标
public Cursor cursor;
现在我想在我的第二个名为imageAdapter.java的类中访问该变量'cursor'。如果有可能这样的人会有好的吗?
答案 0 :(得分:0)
将光标传递给适配器,如下所示
imageAdapter adapter = new imageAdapter(MainActivity.this, cursor);
您可以从适配器类中评估此光标。
Cursor cursor;
public imageAdapter(Activity activity, Cursor cursor) {
this.cursor = cursor;
}
现在您可以使用getView(...)
方法访问光标数据。
答案 1 :(得分:0)
如果ImageAdapter
延长CursorAdapter
,请使用MainActivity
adapter.swapCursor(yourCursor);
然后在ImageAdapter
中调用getCursor()
如果ImageAdapter
未从CursorAdapter
扩展,则可以在其中实现set方法。
private Cursor cursor;
public void setCursor(Cursor cursor){
this.cursor = cursor;
}
并将其设置为MainActivity
,如imageAdapter.setCursor(yourCursor)
;
从OOP角度来看,这通常比将MainActivity
中的游标声明为静态或从ImageAdapter
创建MainActivity
依赖项更好。
答案 2 :(得分:-1)
您是否尝试为变量???创建getter和setter,或者您可以通过
将其设为静态public static Cursor cursor;
并访问它:
MainActivity.cursor;
或者如果你制作了getter和setter,你就可以接受它:
MainActivity m = new MainActivity();
m.getCursor();
m.setCursor(new Cursor);
希望它有所帮助!!!