3

我一直在编写一个 Android 应用程序,它有很多专门的代码。可以想象,那里有很多案例驱动的代码。由于大多数 Android 回调功能基于整数和 ItemID 和 requestCodes,因此在 switch 语句或 if-then-else 结构中内置了很多功能。

以更好的方式组织/重构此代码的最佳实践是什么?您发现什么可以减少代码量并同时澄清它?大量的小类会损害 Android 性能吗?

提前致谢。

4

1 回答 1

1

大量的类不会影响应用程序的性能。然而,Android 中的一些良好实践包括将整数、项目 ID 和请求代码等值放入资源 xml 文件中。

您还将看到许多回调类作为与它们相关的对象的内部接口:

public class MyObject
{

    private Callback callback;
    private Object returnObject;

    public void setCallback(Callback callback) 
    {
        this.callback = callback;

    }

    public void doSomething()
    {
        //do something - could be an anync task or other that assigns returnObject
        callback.invoke(returnObject);
    }

    public interface Callback
    {
        public void invoke(Object obj);
    }
}

然后您可以按如下方式使用它:

MyObject obj = new MyObject();
obj.setCallback(new MyObject.Callback() {
    @Override
    public void invoke(Object obj) {
        Log.i("Callback", obj.toString());
    }
});
obj.doSomething();
于 2013-04-30T14:59:03.277 回答