Java 访问已创建视图的同一实例
我在主android项目中的onCreate中创建了一个对象实例。我已经创建了一个菜单项,它位于菜单项之外,但我想访问同一个实例。我该怎么做?(我无法使实例成为全局实例,因为onCreate还没有被调用Java 访问已创建视图的同一实例,java,android,eclipse,instance,Java,Android,Eclipse,Instance,我在主android项目中的onCreate中创建了一个对象实例。我已经创建了一个菜单项,它位于菜单项之外,但我想访问同一个实例。我该怎么做?(我无法使实例成为全局实例,因为onCreate还没有被调用 public class My_Main extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); set
public class My_Main extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my__main);
final new_viewer pv = new new_viewer(this);
}
}
public void test()
{
//how can I get the same instance of pv here?
}
在此方面的任何帮助都将不胜感激
谢谢!将您的
私有新查看器pv;
作为我的主要活动的类级别变量,例如
public class My_Main extends Activity {
private new_viewer pv = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my__main);
pv = new new_viewer(this);
}
public void test()
{
//Access pv here..
}
}
另外,将您的test()
函数放在My_主活动范围内。只需在类(活动)级别声明它。这可能需要构造函数,因为新的\u查看器是最终的?原始代码中存在的问题比这多,test()
在My_Main
类之外…@AndroidKiller-不需要构造函数,你只需要初始化它。就像new_viewer pv=null;
@user370305,是的,那么就可以了。+1@user370305谢谢。。我不知道pv仍然保持这个值。无论如何,我最终生成了一个单例(但我很可能会把它换成这个,因为它不那么令人困惑)谢谢!