0

ここに私のコードがあります:

ポップアップウィンドウを使用して、スピナーアイテムのリストで1つのオプションを選択しながら、スピナーにさらにアイテムを追加しようとしています...しかし、実行時に「追加」をクリックするとエラー(強制終了)が発生します.. .

    s1 = (Spinner) findViewById(R.id.spinner);

    final ArrayAdapter<String> adapter  = new ArrayAdapter<String>(
            this,android.R.layout.simple_spinner_item,Items);
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    s1.setAdapter(adapter);
    s1.setOnItemSelectedListener(new OnItemSelectedListener()
    {
        public void onItemSelected(AdapterView<?> arg0, 
        View arg1, int arg2, long arg3) 
        {
 if(index==2)
            {
                    final Dialog dialog=new Dialog(Starttracker.this);
                    dialog.setContentView(R.layout.popup);
                    dialog.setTitle("Enter The Item");
                    dialog.setCanceledOnTouchOutside(true);

                    final EditText filename=(EditText)dialog.findViewById(R.id.filename);
                    filename.setText("");

                    Button d_ok=(Button)dialog.findViewById(R.id.d_ok);
                    Button d_cancel=(Button)dialog.findViewById(R.id.d_cancel);
                    d_ok.setOnTouchListener(new OnTouchListener(){
                        public boolean onTouch(View v,MotionEvent me){

                              String textHolder = "" + filename.getText();
                                 adapter.add(textHolder);
                                 s1.setAdapter(adapter);
                                 dialog.dismiss();
                                 return false;
                        }
                    });
                    d_cancel.setOnTouchListener(new OnTouchListener(){
                        public boolean onTouch(View v,MotionEvent me){
                            dialog.dismiss();
                            return false;
                        }
                    });
                    dialog.show();

                    return;
                 }

助けてください...友達に感謝します

4

2 に答える 2

0

うまくいくかわかりませんが試してみてください

s1.notifyDataSetChanged();

それ以外の

s1.setAdapter(adapter);
于 2011-02-28T12:37:17.893 に答える
0

私の質問への答え:

 d_ok.setOnClickListener(new OnClickListener(){

                public void onClick(View arg0) {
                    // TODO Auto-generated method stub

                    String textHolder = filename.getText().toString();

                    dialog.dismiss();

                    Items.add(textHolder);

                    //  s1.setAdapter(adapter);

                    // notifyDataSetChanged();

                }
            });

どうもありがとう

于 2011-03-01T08:29:05.090 に答える