我有两个活动,活动之一有按钮,指向活动二和其中的方法。我试图使用TextView.SetText把东西放在屏幕上,但不断得到NullPointerException。Android TextView.SetText空指针异常
活动2:
public class SomeActivity extends Activity {
TextView textview ;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.some_activity);
textview = (TextView) findViewById(R.id.textview);
spill("Some text");
}
public void spill(String s){
textview.setText(s);
}
public void methodCalledFromActivityOne(){
System.out.println("Works");
spill("Why Doesn't this work?");
}
XML有这样的:
<TextView
android:id="@+id/textview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=""
tools:context=".SomeActivity" />
我是新来的Android和就会很感激所有/任何帮助。
编辑:XML的名称是好的,只有当我在调用methodCalledFromActivityOne()的活动1中按下按钮1时,错误才会发生。 这是我从LogCat中得到的: 引起的:java.lang.NullPointerException在android.app.Activity.findViewById在data.storage.SomeActivity.spill在data.storage.SomeActivity.methodCalledFromActivityOne at data.storage.ActivityOne。按钮1已点击
当你得到一个错误,请给我们提供一些更多的信息,比如什么规则,错误发生......我猜你的XML文件有错误的名称,你的XML文件的名称应该是:some_activity.xml在这种情况下! – Ferdau
何时调用此方法methodCalledFromActivityOne? – Shachillies
如果您致电 public void spill(String s){text; textview.setText(s); } 从第一个活动开始,您将得到NullPointerException,因为此TextView不存在于该活动的布局中。请张贴第一个活动的代码和它的xml布局 –