相关疑难解决方法(0)

单身人士与Android中的应用程序上下文?

回顾这篇文章列举了使用单例的几个问题 并看过使用单例模式的Android应用程序的几个例子,我想知道使用Singletons而不是通过全局应用程序状态共享的单个实例是一个好主意(继承android.os.Application并获取它通过context.getApplication()).

两种机制都有哪些优点/缺点?

说实话,我希望在这篇文章中使用Web应用程序的单例模式得到相同的答案,不是一个好主意!但适用于Android.我对么?DalvikVM有什么不同呢?

编辑:我想对涉及的几个方面有意见:

  • 同步
  • 可重用性
  • 测试

java singleton android design-patterns

360
推荐指数
6
解决办法
13万
查看次数

使用Android Application类来保存数据

我正在开发一个相当复杂的Android应用程序,它需要关于应用程序的大量数据(我说总共大约500KB - 这对于移动设备来说是否很大?).据我所知,应用程序中的任何方向更改(在活动中,更准确地说)会导致活动的完全破坏和重新创建.根据我的发现,Application类没有相同的生命周期(即,所有意图和目的,它总是被实例化).将状态信息存储在应用程序类中然后从Activity引用它是否有意义,或者由于移动设备上的内存限制,这通常不是"可接受的"方法?我真的很感激有关这个主题的任何建议.谢谢!

android application-lifecycle

109
推荐指数
3
解决办法
7万
查看次数

在其他类中获取变量

我需要inString在其他课程中获得变量.我怎样才能做到这一点?

public class main {
    public static StringBuffer inString;


    public static void main(String[] args) {
        inString = new StringBuffer("Our aim is to make a 15 realistic game, where grinding powerlines and doing a tailwhip isn't easy, like in the real world. A game in which you will feel like you're actual riding. A game in which creativity and beauty are combined. ");
        inString = new StringBuffer(inString.toString().replaceAll(" +", " "));
        }
}
Run Code Online (Sandbox Code Playgroud)

所以我尝试System.out.println(main.inString);在我的Textcl.class中使用,但得到null.

java class

5
推荐指数
1
解决办法
2569
查看次数

使用viewpager.setCurrentItem(position)传递一些数据

我希望在按钮点击内传递一些值,同时更改viewpager选项卡片段.我有两个问题.

  1. 传递数据的最佳方法是什么?
  2. 如果我使用静态数据会有什么问题?如:

    public static string abc=""
    
    case R.id.IVActionMore:   
    ViewPager viewPager = (ViewPager) getActivity().findViewById(R.id.tabs_viewpager);
    viewPager.setCurrentItem(3);
    //abc = "action";
    break;
    
    Run Code Online (Sandbox Code Playgroud)

java android android-viewpager

5
推荐指数
1
解决办法
413
查看次数

Android序列化/对象传递和返回

所以我有一个管理工作人员的应用程序.在应用程序的一个部分中,我有一个从Web服务检索到的工作程序列表.然后,用户从列表中选择一个工作器,列表将启动一个新活动(将Workorder对象传递给它),显示工作订单详细信息.用户可以在此期间编辑部分工作订单.如果用户返回列表(通过后退按钮),我需要将修改后的工作单BACK传递给工作单列表,并使用新修改的对象更新或替换旧对象.否则,(当前正在发生)用户编辑工作订单,但如果他们返回列表并再次选择相同的工作订单,则工作订单详细信息activty将显示所有旧数据.做这个的最好方式是什么.目前我有Workorder类实现Serializable,因此可以将workorder对象传递给连续的活动.

这样可行:列表 - >工作订单A.

但这就是我遇到问题的地方:List < - Workorder A(已修改)

我不确定我是否应该使用startActivtyForResult并传回工作订单对象.我知道这是可能的,但我不确定是否有更优雅的方法来做到这一点.感谢您提供的任何帮助,非常感谢!

serialization android android-activity

4
推荐指数
1
解决办法
1万
查看次数