这里是代码:
package com.example.appbsp;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.widget.TextView;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
TextView textView1 = (TextView)
findViewById(R.id.textView1);
}
}
首先,我在activity_main.xml中添加了一个新的TextView,并为其指定了Id:@ + id / textView1 然后我在MainActivity.java中输入了这段代码以获得更多输出:
TextView textView1 = (TextView)
findViewById(R.id.textView1);
然后我导入了android.widget.TextView,但是上面的代码变成了红色下划线,它表示无法访问的代码,只是“删除”作为快速修复。它工作前一个月,现在我不再工作了。有谁知道答案?
(目标SDK:API 18;使用API 19编译)
我是新手,所以请尽量给出一个不太复杂的答案。抱歉英语不好。感谢
答案 0 :(得分:4)
回到底部。
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
TextView textView1 = (TextView)
findViewById(R.id.textView1);
return true;
}
答案 1 :(得分:2)
因为您在该语句之前编写了return true
,因此无法访问此行TextView textView1 = (TextView) findViewById(R.id.textView1);
,因为编译器无法访问此语句。
这样做
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
并初始化onCreate
中的视图
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextView textView1 = (TextView) findViewById(R.id.textView1);
// you can set the text here any
}