0

我有这样的代码:

public class Screening extends ListActivity implements OnClickListener{
...
Button screeningOK, set, cancel;
...
@Override
protected void onListItemClick(ListView l, View v, int position, long id) 
{
    super.onListItemClick(l, v, position, id);
    int listPosition = position; 

    switch(listPosition){
    case _AGESELECTION:
        Dialog d = new Dialog(Screening.this);
        d.setTitle(R.string.ageselector_title);
        set = (Button)d.findViewById(R.id.bSet);
        cancel = (Button)d.findViewById(R.id.bCancel);
        //set.setOnClickListener(this);



        cancel.setOnClickListener(new View.OnClickListener() {

            public void onClick(View v) {
                finish();
            }
        });
        d.setContentView(R.layout.agedialog);
        d.show();

    break;

如此简短的解释,我有一个打开对话框的列表。Dialog 有 NumberPicker、设置和取消按钮。

现在,在 Set 上,我想保存 NumPicker 值,然后取消以取消对话框。(finish(); 很可能会完成活动,但这不是问题,问题是无论我是否在点击侦听器上设置新的,例如:

set.setOnClickListener(this);

或者

cancel.setOnClickListener(new View.OnClickListener() {

        public void onClick(View v) {
            finish();
        }
    });

它使我的应用程序因空指针异常而崩溃。

主类中有 onClick 功能,因为原始活动由列表、单选按钮和保存按钮组成。

我假设我已经拥有 onClickListener 的事实让我在这里很难过,但不知道是什么。

请指教。

tnx。

4

0 回答 0