首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Android >

为什么!为什么AVD模拟器总是输出第一次的运行结果?解决方法

2012-04-14 
为什么!为什么AVD模拟器总是输出第一次的运行结果???安卓开发的新生,刚刚搭好eclipse和AVD等等东东,写了个

为什么!为什么AVD模拟器总是输出第一次的运行结果???
安卓开发的新生,刚刚搭好eclipse和AVD等等东东,写了个hello,world程序,运行倒是成功了。
但是我把hello,world程序的输出改成“大家好”,AVD输出竟然还是“hello,world”,崩溃了,搜遍网上没找到为什么,哪位大神能指点一二。源代码如下

Java code
package helloworld.test;import android.app.Activity;import android.os.Bundle;import android.widget.TextView;public class HelloWorldActivity extends Activity {    /** Called when the activity is first created. */    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        TextView tv=new TextView(this);         tv.setText("大家好");    //原来是 tv.setText("hello,world!");         setContentView(R.layout.main);    }}


[解决办法]
TextView tv=new TextView(this); 
tv.setText("大家好"); //原来是 tv.setText("hello,world!"); 
以上两句代码没有用的,你需要用findViewById(R.id.xxx)去对layout中的TextView设置文本,才会变的

[解决办法]
楼上正解。你一开始的时候显示的hello,world!不是你new出来的textview上面的,需要绑定layout中的控件才能更改它。
[解决办法]
也可以这样解决:
public class HelloActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TextView tv=new TextView(this); 
tv.setText("大家好"); //原来是 tv.setText("hello,world!"); 
setContentView(tv);
}
}

热点排行