[英]resource not found when populating list in android
我想在我的Android應用程序中獲取一個簡單的列表,並用一些字符串填充它。 為此,我實施了以下主要活動:
public class MainMenuActivity extends BaseActivity{
private ArrayList<String> teamList = new ArrayList<String>();
private ArrayAdapter<String> teamListAdapter;
private ListView teamListView;
protected void loadGUI() {
setContentView(R.layout.main_login);
teamListView = (ListView) findViewById(R.id.teamList);
teamListAdapter = new ArrayAdapter<String>(mContext, R.id.teamList, teamList);
teamListView.setAdapter(teamListAdapter);
addItem("test");
}
public void addItem(String item) {
teamList.add(item);
teamListAdapter.notifyDataSetChanged();
}
}
使用BaseActivity實現onCreate方法等的類:
public abstract class BaseActivity extends Activity {
protected Activity mActivity;
protected Context mContext;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mActivity = this;
mContext = getApplicationContext();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu, menu);
return true;
}
@Override
public void onResume() {
super.onResume();
loadGUI();
}
protected abstract void loadGUI();
}
當我嘗試運行它時,我收到錯誤:
05-09 16:50:04.386: E/AndroidRuntime(12037): android.content.res.Resources$NotFoundException: Resource ID #0x7f070002 type #0x12 is not valid
這個錯誤是由函數調用關閉addItem引起的,但我不知道這個函數有什么問題。 有人看到可能出錯的地方嗎?
您將錯誤類型的資源傳遞給ArrayAdaper的構造函數。 參數2應該是包含在實例化視圖時使用的TextView的布局文件的資源ID。
您在適配器中使用了錯誤的ID。 嘗試改變這個:
teamListAdapter = new ArrayAdapter<String>(mContext, R.id.teamList, teamList);
對此:
teamListAdapter = new ArrayAdapter<String>(mContext, android.R.layout.simple_list_item_1, teamList);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.