,为什么同样代码,位置不一样效果不一样

求助,为什么同样代码,位置不一样效果不一样?刚学android 一个关于TextView的知识。代码如下:Java codepubli

求助,为什么同样代码,位置不一样效果不一样?
刚学android 一个关于TextView的知识。代码如下:

Java code
public void onCreate(Bundle savedInstanceState)    {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);        try        {            StringBuffer sb = new StringBuffer();            String url = "http://10.0.2.2:8080/JSON_server/JSONDemoServlet";            String body = getContent(url);            JSONArray array = new JSONArray(body);            for (int i = 0; i < array.length(); i++)            {                JSONObject obj = array.getJSONObject(i);                sb.append("id:").append(obj.getInt("id")).append("\t");                sb.append("name:").append(obj.getString("name")).append("\r\n");                sb.append("gender:").append(obj.getString("gender")).append("\t");                sb.append("email:").append(obj.getString("email")).append("\r\n");                sb.append("----------------------\r\n");            }            TextView textView = (TextView) findViewById(R.id.textView);            textView.setText("Hello");        } catch (Exception e){}


为什么textView.setText放这里,就无法设置textView的内容。运行效果如下图

textView的text内容并没改变。如果把TextView textView = (TextView) findViewById(R.id.textView);textView.setText("Hello");这两行代码放到setContentView(R.layout.main);后面就可以改变text的内容。这是为什么?

[解决办法]
一般不应该在oncreate 之类的函数中做耗时太长的操作的。
估计是时间太长,系统让计算停止了。
放到线程中做网络和解析操作吧。
[解决办法]
探讨

引用:

setContentView(R.layout.main)未设之前,根本就不知道R.id.textView为何物

findViewById(R.id.textView);textView.setText("Hello");
必须放在setContentView(R.layout.main)后面

[解决办法]
请参考
http://blog.csdn.net/mylzc/article/details/6736988