
버튼을 누르면 다이얼로그가 팝업되면서, 그 안에 정보들을 나열할 listview를 넣으려고 하는데요,
xml에서 다이얼로그나, 버튼이 있는 메인 레이아웃은 다 만들어놨는데, 다이얼로그 팝업 버튼을 누르면
setadapter부분에서 널포인터익셉션 오류가 발생합니다.
다이얼로그에 listview기능을 구현할 때와 보통의 activity상에서 구현하는 것과 다른것이 있나요?
-
/리스트뷰
noticeList = (ListView)findViewById(R.id.susinList);
//다이얼로그xml에 있는 listView(susinList)
//배열
noticeArr = new ArrayList<String>();
// ArrayList<String>choiceArr = new ArrayList<String>();
//어댑터
noticeAdap = new ArrayAdapter<String>(this,R.layout.listview_custom,R.id.listText,noticeArr);
int aa=1;
//listview에 arrayadapter연결
noticeList.setAdapter(noticeAdap); <-에러발생
//listview의 선택모드 지정
noticeList.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);//single에서 multiple로 변경(체크박스)
ArrayList temp = select_stu();
for(int i=0; i < temp.size(); i++)
{
noticeArr.add(temp.get(i).toString());
}
noticeAdap.notifyDataSetChanged(); //새로 갱신해서 보여줌~
}//onCreate
@Override
public void onClick(View v) {
switch(v.getId())
{
//수신자 리스트 (다이얼로그 형식)
case R.id.choice_list:
//선택한 수신자 보여주기
//커스텀 다이얼로그
Context con = notice.this;
AlertDialog.Builder builder;
AlertDialog listdialog;
inflate = (LayoutInflater)con.getSystemService(LAYOUT_INFLATER_SERVICE);
final View layout=
inflate.inflate(R.layout.list_dialog,(ViewGroup)findViewById(R.id.list_dialog_layout));
//에디트텍스트들
builder = new AlertDialog.Builder(con);
builder.setView(layout);//view
listdialog=builder.create();
if(cardNum==null)
{
Toast.makeText(getApplicationContext(), "선택한 수신자가 없습니다.", 2000).show();
}
else//선택된 사람을 리스트에 띄워준다.
{
Toast.makeText(getApplicationContext(), cardNum, 2000).show();
String[] numbers = cardNum.split(";");
for(int i=0;i<numbers.length;i++)
{
Log.d("배열:",numbers[i]);
}
}
Toast.makeText(getApplicationContext(), "dfasdtew", 2000).show();
listdialog.setButton("확인", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
// dialog.dismiss();
}
});//확인
listdialog.setButton2("취소", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
// dialog.dismiss();
}
});//취소
listdialog.show();
break;
}
}