好的,所以我已经尝试过自己解决这个问题,但即使我在stackoverflow上找到了一个已回答的问题(即这个问题Errors "Syntax error on token(s), misplaced construct(s), VariableDeclaratorId expected after this token MainActivity.java"),我仍然遇到问题。我有一个名为HeadlinesActivity的Activity,它是通过单击按钮从MainActivity启动的。我遇到的问题与我链接的问题中的问题相同,但我按照建议将ListView声明和其他相关内容移动到我的onCreate()中,并且摆脱了eclipse中的错误。但是,现在当我尝试在模拟器上测试应用程序时,如果我尝试单击标题按钮Android会显示一条消息,说明我的应用程序已停止。 这是HeadlinesActivity的代码:
import android.annotation.SuppressLint;
import android.app.Activity;
import android.os.Build;
import android.os.Bundle;
import android.view.Menu;
import android.widget.ArrayAdapter;
import android.widget.ListView;
public class HeadlinesActivity extends Activity {
@SuppressLint("NewApi")
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_headlines);
// Make sure we're running on Honeycomb or higher to use ActionBar APIs
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
// Show the Up button in the action bar.
getActionBar().setDisplayHomeAsUpEnabled(true) ;
}
final ListView listView = (ListView) findViewById(R.id.listView1);
final String[] values = { "Android", "iPhone", "WindowsMobile",
"Blackberry", "WebOS", "Ubuntu", "Windows7", "Max OS X",
"Linux", "OS/2" } ;
final ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
R.layout.activity_headlines, R.id.textView1, values);
// Assign adapter to ListView
listView.setAdapter(adapter) ;
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_headlines, menu);
return true;
}
}
答案 0 :(得分:1)
您在Activity和每个ListView行中使用相同的布局......
就当前错误而言,我猜测activity_headlines.xml
没有标识为listView1
的ListView或标识为textView1
的TextView。尝试:
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, values);