试着用showAtLocation(view,Gravity.BOTTOM,0,0); 放在
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
vv = (SurfaceView)findViewById(R.id.surfaceView1);
mPop.showAtLocation(vv,Gravity.BOTTOM,0,0); //执行出错,不知原因
}
但如果把mPop.showAtLocation(vv,Gravity.BOTTOM,0,0); 放在一个button点击事件里执行就没错,但我就想在安卓初始化的时候直接就显示,而不是放在button事件去触发它。
解:
new一个Handler变量,在OnCreate里面通过这个Handler去发送消息,handler在Onmessage里面收到消息后,在show出来就可以了;类似的情况还有在oncreate里面不能显示toast之类的,要用线程去处理
追问
能不能在详细一点,我的确见到过你说的那种 handler 方式,但不太会用,
能给出一个结构吗,比如 怎么在 OnCreate里面通过Handler发送消息,然后怎么在OnMessage里面去收这个消息?