我自定义了一个对话框资源,然后想通过单击该对话框的一个按钮来修改application中的数据,怎么实现啊,上述的例子都是activity,没有extents dialog

解决方案 »

  1.   

    主类中定义application,初始化不报错,但是自定义dialog中就报错,是不是一个是activity,一个是dialog。那如果想在dialog中使用的话,怎么实现
      

  2.   

    可以dialog的构造方法中把context传进去。
      

  3.   

    楼上正解,或者dialog写在activity里面,然后xxxActivity.this.getApp..
      

  4.   

     写个单例,外部可以获取Application的引用,数据的获取和修改通过get()/set()去实现
      

  5.   

    恩,一个应用只有一个Application,因此可以用单例对外提供Application的引用,但是一般建议不这么去做。而是数据处理放在一个专门的类去操作,当数据在应用运行区间只有一份时,可以使用单例,便于维护。在Application写过多代码不太合适。另外如果数据放在Application中,引用时需要传入getApplicationContext(),它的生命周期伴随着整个应用,应该考虑是否合适。一般数据放在专门的数据操作类是不需要传入context,除非你需要保存在sp中。
      

  6.   

    你的dialogbuy类是继承了Activity的吧。直接使用dialogbuy.getApplicationContext()
      

  7.   

    我单独间的一个类,然后在manifest中进行了注册,网上的一种方法,我是新手其他方法暂时不会