public class SelectAdapter extends ArrayAdapter<Question> implements OnClickListener {
private Context context;
private ArrayList<Question> questions;
private TextView questionName, questionIdx, questionFlag;
private Button questionItem;
private EditText questionEdit;
private String items, name;
private Question question;
private String[] aa;
public Context getContext() {
return context;
}
public void setContext(Context context) {
this.context = context;
}

public ArrayList<Question> getQuestions() {
return questions;
}
public void setQuestions(ArrayList<Question> questions) {
this.questions = questions;
}
public SelectAdapter(Context context, int textViewResourceId,
ArrayList<Question> questions) {
super(context, textViewResourceId, questions);
// TODO Auto-generated constructor stub
this.context=context;
this.questions=questions;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
View v = convertView;
if(v==null){
LayoutInflater vi = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v=vi.inflate(R.layout.surveyfrom, null);
}
question = questions.get(position);
questionName =(TextView)v.findViewById(R.id.question_name);
questionIdx = (TextView)v.findViewById(R.id.question_idx);
questionFlag = (TextView)v.findViewById(R.id.question_flag);
questionName.setText(question.getName());
questionIdx.setText(question.getIdx());
questionEdit=(EditText)v.findViewById(R.id.BtnEdit);
questionItem = (Button)v.findViewById(R.id.BtnPopUp)
questionFlag.setText("0");
items = question.getItems();
name= question.getName();
aa = items.split("\\|\\|");
questionItem.setVisibility(View.VISIBLE);
questionEdit.setVisibility(View.GONE);
questionItem.setOnClickListener(this);
return v;
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
new AlertDialog.Builder(context).setTitle(name).setItems(
aa, new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface arg0, int which) {
arg0.dismiss();
questionItem.setText(aa[which]);
}
}).setCancelable(false).show();
}
}

안드로이드 초보입니다. 상기와 같이 커스텀 어댑터를 구성한후, 특정버튼 questionItem = (Button)v.findViewById(R.id.BtnPopUp)
을 클릭 하였을 시, 다이얼로그가 뜨도록 하려 합니다.
하지만  "new AlertDialog.Builder(context).setTitle(name).setItems("에서 context의 문제인지 아래와 같은 문제가 뜹니다.

android.view.WindowManager$BadTokenException: Unable to add window -- token android.app.LocalActivityManager$LocalActivityRecord@44e93fc0 is not valid; is your activity running?

초보인지라 여러분들의 도움의 손길을 기다립니다. 부탁드리겠습니다.