如何解决Android子类和单独的Java文件
| 我正在为android开发一个应用程序,随着时间的流逝,它可能会变得越来越大。我想做的是实现到主类子文件中进行逻辑处理。例如: 主要活动使用Surfaceview。class Battle extends SurfaceView implements SurfaceHolder.Callback {
我想在一个名为touchActions.java的文件中添加与触摸事件有关的所有逻辑。
public class touchActions extends Battle {
它似乎可以正常工作,并且在Eclipse中没有错误。但是,当我尝试在手机上运行它时,以下行出现了空指针异常。
if (_touch.checkHitBox(1)) {
宣布战斗等级后开始_touch。
public touchActions _touch;
什么是执行此操作的正确方法,否则可能导致nullpointerexception?
编辑:
这里的目标是组织代码,这样我就不会得到一个巨大的代码文件。在仍使用其他文件的同时可以进行内部类学习吗?如果您知道教程,那也很好。
解决方法
宣布战斗等级后开始_touch。
public touchActions _touch;
没有启动...只是声明您需要使用类似这样的东西来启动它
_touch = new touchActions();
编辑:
如果公开touchActions _touch;在战斗课上宣告你做错了一切...
应该是这样的
class Battle extends SurfaceView implements SurfaceHolder.Callback {
public touchActions _touch;
public Battle (){
_touch = new touchActions(this);
_touch.callingMethodFromTouch();
}
}
//should not extends Battle
public class touchActions {
Battle parent_;
public touchActions (Battle parent){
parent_ = parent;
}
.... rest of implemetation you can call parent_.methodFromBattleClass(); here
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。