当前位置:编程学习 > wap >>

Android中的View类里面数据无法访问

我用View类画一个棋盘
public class Chessboard extends View{...
Chessboard里面定义了一个 public int side 用来记录该是那边走的
还定义了个方法:
     public void changeSide()
{
....
}
但是我用别的类里面
ChessBroad gameView;
if(gameView.side){..}
gameView.changeSide;
这样访问却使虚拟机出错强制退出了
如果我不访问View类里面的数据就不会有错...(把Side放在Chessboard类以外)
求高手解决 --------------------编程问答-------------------- 出的什么错?日志显示的什么内容啊,changeSide里面是什么操作,有没有设计到UI操作。应该明白UI单线程安全吧。最好把日志贴出来哦。 --------------------编程问答-------------------- public class Chessboard extends View{
public int side;
....
  public void changeSide()
{
   this.side = (side + 1)%2;
}
...
}
这样,然后在MainActivity里面新建对象
Chessboard gameView;
...
然后在代码里面调用 gameView.side
和调用方法 game.changSide()有问题
eclipse显示编译成功,但是进入虚拟机运行会出现错误强制退出
修改代码不访问gameView.side和game.changSide()就没问题 --------------------编程问答-------------------- 你的ChessBoard是通过XML配置进去的吧,因为你这样配置进去的,和代码中new出来的是不一样的运行机制,如果是通过findViewById这样获取过来的,里面像你那么配置的属性是找不到的,必须要先赋值,因为你里面也没有给默认值。

建议像这种经常变化的属性在里面加个getter和setter吧 --------------------编程问答-------------------- 继承adapter --------------------编程问答-------------------- 贴日志比较好,你的gameView是怎么生成的,xml还是代码new了放进视图的呢。
补充:移动开发 ,  Android
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,