【发布时间】:2012-12-11 02:56:00
【问题描述】:
我有一个问题,我制作了一个简单的应用程序来向您展示我的问题。 我希望 setContentView 在执行 Sleep 之前执行并显示 .xml。我以为一切都会按顺序执行? 有没有人能告诉我为什么它不这样做?
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
try {
Thread.sleep(10000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// do something
}
非常感谢!
编辑:
这里是真正的OnCreate,好像问题比较大。
使用 sleep 一切正常,但使用 Connect 方法时出现问题。
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ConnectBluetooth();
}
在 ConnectBluetooth() 方法中,我只是创建一个新的 Socket 并尝试连接。
使用 ned 线程或处理程序似乎不起作用,那我该怎么办?使用类似 asynctask 的东西?
非常感谢大家!
【问题讨论】:
-
IMO
sleep(...)是任何平台上任何编程语言的 hack,但如果你在 Android 中使用它(尤其是在主/UI 线程上),你真的是在自找麻烦。
标签: android