【发布时间】:2013-02-16 14:31:28
【问题描述】:
我的应用程序越来越大。
为了使其健壮,我决定将其拆分为活动之外的单独类,每个类代表一组活动功能。
问题是,我经常需要这些类中的上下文/活动变量。
这让我很困惑:
我应该“扩展” MainActivity 类,然后使用 parents() 获取 context/actvitiy 方法,还是应该使用 Context/Activity 变量实例化每个类,如下所示:
static private BrowseHandler instance;
static public void init(Context ctx, FragmentActivity ac) {
if (null==instance) {
instance = new BrowseHandler(ctx, ac);
}
}
static public BrowseHandler getInstance() {
return instance;
}
哪种方法更好?
或许,我错过了重点?我应该将我的活动代码保存在我的活动中吗?
【问题讨论】:
-
除此之外,相关:我发现 Android 并没有像其他移动平台那样将“视图”和“控制器”职责分开,Activity 和 ListAdapters 最终塞满了低级视图操作代码。如果这是您的问题,请尝试创建专用的 View 类。如果你有例如ListView 的子视图及其根标签是RelativeLayout,只需继承RelativeLayout,将您的子类设为根标签,并将所有低级视图操作移至子类中。您的 listadapter 可以将其膨胀视图转换为正确的类型并在其上调用高级方法