public class MenuDialog extends Activity {
private ListView mListView = null;
private ListViewAdapter mAdapter = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.menu_dialog);
mListView = (ListView) findViewById(R.id.menuLV);
mAdapter = new ListViewAdapter(this);
mListView.setAdapter(mAdapter);
mAdapter.addItem("항목관리", "항목을 추가,삭제,수정을 하는 메뉴");
mListView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View v, int position, long id){
MenuData mData = mAdapter.mListData.get(position);
Toast.makeText(MenuDialog.this, mData.mMenuName, Toast.LENGTH_SHORT).show();
}
});
}
@Override
public void onBackPressed() {
super.onBackPressed();
finish();
}
private class ViewHolder {
public TextView mMenuName;
public TextView mMenuCommet;
}
private class ListViewAdapter extends BaseAdapter {
private Context mContext = null;
private ArrayList<MenuData> mListData = new ArrayList<MenuData>();
public ListViewAdapter(Context mContext) {
super();
this.mContext = mContext;
}
@Override
public int getCount() {
return mListData.size();
}
@Override
public Object getItem(int position) {
return mListData.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView == null) {
holder = new ViewHolder();
LayoutInflater inflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView = inflater.inflate(R.layout.menulist, null);
holder.mMenuName = (TextView)findViewById(R.id.mununame);
holder.mMenuCommet = (TextView)findViewById(R.id.munucomment);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
MenuData mMenuData = mListData.get(position);
holder.mMenuName.setText(mMenuData.mMenuName);
holder.mMenuCommet.setText(mMenuData.mMenuComment);
return convertView;
}
public void addItem(String mMenuName, String mMenuCommet){
MenuData addInfo = null;
addInfo = new MenuData();
addInfo.mMenuName = mMenuName;
addInfo.mMenuComment = mMenuCommet;
mListData.add(addInfo);
}
public void remove(int position){
mListData.remove(position);
dataChange();
}
public void dataChange(){
mAdapter.notifyDataSetChanged();
}
}
}
정상적으로 실행은 되는데 다이얼로그 진입시 프로그램이 멈추면서 진행이 안되는데 런타임 오류라 해결이 안되네요..
고수님들의 많은 도움부탁드립니다.