适配器作为活动的内部类别,还是独立的类?

时间:2012-01-24 16:30:00

标签: android networking user-interface coding-style

我希望为Android建立一些“最佳实践”,包括代码重用,编程/理解的简易性,性能和内存。所以,你知道,只是好的代码。

似乎很多Android文档和对象设计都会让你有很多内部类。 AsyncTask喜欢将数据直接加载到Views中。适配器喜欢访问LayoutInflator。

从代码重用的角度来看,构建一些解决问题的适配器或AsyncTasks会很好,并根据需要重用它们。这意味着绕过你的上下文,感觉很脏,如果不仔细做就会导致内存陷阱。另一种选择是将活动所需的所有AsyncTasks和Adapters直接烘焙到Activity中。这使得重用代码变得困难,但是你可以很容易地看到事情的进展,而且由于你直接使用了上下文,所以很难永远保持这些东西。

我也很关心编写代码,这些代码对于我们将来可能会聘用的程序员来说很熟悉。

Android的编码标准是什么?什么是应用程序的“最佳设计”,它需要从Web上加载几乎所有数据,具有适用于手机和平板电脑的UI(每个都有不同的活动),并且易于使用和延长多年来??

2 个答案:

答案 0 :(得分:1)

你应该看看this 如何在android中编码。

你可以根据自己的需要使用内部课程或分班。例如,当以json格式从web加载所有数据时,我总是使用带有静态方法的seprate类,它将返回jsonObject然后我可以在我的应用程序中的任何位置调用此方法并从中提取数据。 此外,我在我的活动中使用asyncTask单个内部类来执行不同的任务,例如在listview中搜索和加载数据,加载用户优先级更改等数据。依此类推。 在自定义适配器中,我总是喜欢不同的类。使用它们真的很容易。 希望它会有所帮助。

答案 1 :(得分:0)

我以前问过这个,这就是我这样做的方式。

如果我要多次使用适配器,我将所有适配器放入名为“com.myapp.adapters”的包中。至于AsyncTask,我总是使用asynctasks作为活动的一部分。

如果您只有一个在活动中执行一些工作的短适配器,则无需为其创建单独的类文件。只需坚持活动即可。