【发布时间】:2014-05-13 10:27:14
【问题描述】:
当我运行我的应用程序时,我在 log-cat 中收到此错误:
Caused by: java.lang.NullPointerException
at com.myfirstapp.myfirstapp.MainActivity.onCreate(MainActivity.java:52)
at android.app.Activity.performCreate(Activity.java:5312)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1111)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2552)
... 11 more
这是第 52 行:
String message = editTextInput.getText().toString();
到目前为止,我已经确定 NPE 必须在我定义 EditText(或任何与此相关的视图)时出现:
EditText editText = (EditText) findViewById(R.id.input_text);
但是,当我定义 EditText 时没有得到 NPE:findViewById() 像这样的视图:
TextView desc = new TextView(this);
这是整个onCreate()方法:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if (savedInstanceState == null) {
getSupportFragmentManager().beginTransaction()
.add(R.id.container, new PlaceholderFragment())
.commit();
}
EditText editText = (EditText) findViewById(R.id.input_text);
Button submit = (Button) findViewById(R.id.submit);
LinearLayout layout = (LinearLayout) findViewById(R.id.layout_main);
Intent intent = new Intent(this, testActivity.class);
final TextView desc = new TextView(this);
final TextView title = new TextView(this);
String message = editText.getText().toString();
submit.setVisibility(View.VISIBLE);
submit.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
editText.setVisibility(View.GONE);}});
desc.setTextSize(20);
desc.setText(message);
desc.setGravity(Gravity.LEFT | Gravity.TOP);
desc.setPadding(5, 5, 5, 5);
desc.setTextColor(getResources().getColor(R.color.black));
title.setTextSize(10);
title.setText(R.string.title_activity_dictionary);
title.setGravity(Gravity.LEFT | Gravity.TOP);
title.setPadding(5, 5, 5, 5);
title.setTextColor(getResources().getColor(R.color.black));
layout.addView(desc);
layout.addView(title);
}
我不明白的是,当我明确定义视图时,为什么会有 NPE?
【问题讨论】:
-
将
fragment_main.xml中的全部内容复制到activity_main.xml试试.. -
非常感谢,终于破解了!多谢,伙计。但是,那么有一个 fragment_main 有什么意义呢? @拉尔
-
看到这个link那个@user3625982
-
我已将其添加为我的答案..请将其标记为已接受..请..
-
哎呀抱歉我是这个论坛的新手 :) 我现在试试@Lal
标签: java android nullpointerexception