[求助]关于SurfaceView能否在XML中初始化 最近在写自绘控件,我自定义了一个SurfaceView,但是我界面比较复杂,不想在java代码里用setContentView来加载单一控件,所以写在了main.xml里,但是遇到的问题是SurfaceView里的绘制线程不初始化。求教高手们在复杂界面上应该如何解决这问题。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你的SurfaceView的线程在哪里启动的?这个线程是什么意思,是指另外一个转么用来绘制SurfaceView的线程吗? 这些线程是surfaceview里的用来绘制一些组件的线程,我surfaceview里面有3个线程,分别用来绘制进度条,可啦拽的进度块和显示时间,我调试发现好像构造函数没有被调用。 线程是在构造函数里初始化的,在surfacecreated里启动的 那就试一下:在set了main.xml后用findViewById方法将surfaceView对象在onCreat()方法里面引用出来,然后手动启动线程哈。反正是想让线程在构造函数启动,这样也不会有什么影响。如果你想需要的时候再启动就是用handler或者asyncTask处理上面的启动。我们用代码实现过,但是类似的例子接触过,你可以试一下。 好办法,看来surfacechanged不好用我就在外面手动启动吧,只能这样了 现在发现问题更严重点,将自定义surfaceview写在xml里之后,构造函数可以调用,但是SurfaceCreated没被调用,在就是surfaceview所在区域无效,用lockCanvas返回的是null,怪不得没调用线程run的时候surfaceview部分是黑屏的。可能是我surfaceview写的有问题。 android程序在下载过程中突然遇到网络中断的情况该如何处理 android 定时器 分享HTC手机Android源代码下载地址 怎么样可以固定我的Linearlayout的宽度? 语法救助 android的ListItem单击后向其它activity中sendMessage的问题 急求解android2.3上显示维语问题和出错,附维语显示思路代码 关于Handler机制的使用 android udp 只能显示第一张图片的问题 Android水印如何生成快速 多线程的问题 关于android中Activity与xml的问题,求高手解答
如果你想需要的时候再启动就是用handler或者asyncTask处理上面的启动。
我们用代码实现过,但是类似的例子接触过,你可以试一下。