我创建了一个像这样的xml文件:
<?xml version="1.0" encoding="utf-8"?>
<ListView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/list" >
</ListView>
Run Code Online (Sandbox Code Playgroud)
和一项活动:
public class ExampleActivity extends ListActivity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.mainlist);
}
}
Run Code Online (Sandbox Code Playgroud)
如你所见,我还没有做任何其他事情.但是我收到了错误:
您的内容必须具有ListView,其id属性为'android.R.id.list'
即使我android:id="@+id/list"在我的xml中有这条线.
问题是什么?
我遇到了这个运行时错误,我真的很难找到它的底部:"你的内容必须有一个ListView,其id属性是android.R.id.list".
这是我的代码:
public class ShowAllJobsInArea extends ListActivity{
Context context;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.show_jobs_in_area);
context=getApplicationContext();
String area=Cookie.getAreaSelected();
final ProgressBar thinger=(ProgressBar) findViewById(R.id.progressBar2);
TabHost tabHost=(TabHost)findViewById(android.R.id.tabhost);
tabHost.setup();
TabSpec spec1=tabHost.newTabSpec("Tab 1");
spec1.setContent(R.id.tab1);
spec1.setIndicator("Starting");
TabSpec spec2=tabHost.newTabSpec("Tab 2");
spec2.setContent(R.id.tab2);
spec2.setIndicator("# Days");
TabSpec spec3=tabHost.newTabSpec("Tab 3");
spec3.setContent(R.id.tab3);
spec3.setIndicator("Rate");
tabHost.addTab(spec1);
tabHost.addTab(spec2);
tabHost.addTab(spec3);
Handler handler = new Handler() {
public void handleMessage(Message message) {
switch (message.what) {
case HttpConnection.DID_START:
thinger.setVisibility(View.VISIBLE);
break;
case HttpConnection.DID_SUCCEED:
String response = (String) message.obj;
Log.i("EOH",response);
ArrayList<String> startDates=new ArrayList<String>();
ArrayList<String> ns=new ArrayList<String>();
ArrayList<String> rates=new ArrayList<String>(); …Run Code Online (Sandbox Code Playgroud)