正在改一个程序,原来的一个地方是Class A用Intent把数值传入到一个PreferenceActivity的Class B里,Class B会把数值存储到SharedPreferences里。
我现在的想法是Class A把数值传入到Class B之后,Class B存储完数值之后启动一个新的Activity,从而实现不显示Class B的效果,用户看到的是从Class A直接去到新的Activity,由于B是PreferenceActivity,测试的时候一直出错,不知道该怎么改,菜鸟求教,求各位指点。

解决方案 »

  1.   

    那就不需要PreferenceActivity了啊,就自己写个class B,这个B就是用来存储数据到sharedpreference里的。如果A是activity,那就可以使用getDefaultPrefence来获取sharedpreference对象,然后调用edit来修改,最后commit提交更新到sharedpreference.xml中就行了。
    PreferenceActivity是用来显示设置界面用的,简单的数据存储不需要用PreferenceActivity的。
      

  2.   

    为什么一定要classB中 你才把数值存入SharedPreferences?? 在进classB的时候 你可以先判断一下SharedPreferences中有没有值 如没有则储存数值然后去classB 如果有值 直接去一个全新的class。希望可以帮到楼主
      

  3.   

    谢谢楼上两位
    Class B除了存储数据之外还有别的功能,而且其他包里也有用到这个class的地方,所以Class B不能没有,只能改,谢谢了,再求教。。