2016-12-01 71 views
1

我有一個對話框,一個對話框內的對話框。
我想要的是在我的第一個對話框中顯示動態ListView的結果,並在第一個對話框中有一個按鈕來調用第二個對話框,其中包含EditText,這樣可以插入一個新的動態ListView值並查看它的第一個對話框。android查看對話框內的listview對話框

public void dialoListview() { 
    final Dialog rankDialog = new Dialog(HI_Talk.this, android.R.style.Theme_Light); 
    rankDialog.setContentView(R.layout.listview_sample); 
    rankDialog.setCancelable(true); 
    ImageButton app_icon = (ImageButton) rankDialog.findViewById(R.id.app_icon); 

    ListView list = (ListView) findViewById(R.id.listView); 
    final ArrayList<String> arrayList = new ArrayList<String>(); 
    final ArrayAdapter<String> savednotes_adapter = new ArrayAdapter<String>(getApplicationContext(), android.R.layout.simple_list_item_1, arrayList); 
    list.setAdapter(savednotes_adapter); 

    app_icon.setOnClickListener(new View.OnClickListener() { 
     public void onClick(View v) { 
      LayoutInflater li = LayoutInflater.from(context); 
      View promt = li.inflate(R.layout.savednotes_list, null); 
      AlertDialog.Builder alerDialogBuilder = new AlertDialog.Builder(context); 
      alerDialogBuilder.setView(promt); 

      final EditText textfield_savednotes = (EditText) promt.findViewById(R.id.edt_textfield); 
      alerDialogBuilder.setCancelable(false).setPositiveButton("saved", new DialogInterface.OnClickListener() { 
       public void onClick(DialogInterface dialog, int id) { 

        String temp_name = textfield_savednotes.getText().toString(); 
        arrayList.add(textfield_savednotes.getText().toString()); 
        textfield_savednotes.setText(""); 
        savednotes_adapter.notifyDataSetChanged(); 
        Toast.makeText(getApplicationContext(), "Template Added", Toast.LENGTH_LONG).show(); 
       } 
      }).setNegativeButton("cancel", new DialogInterface.OnClickListener() { 
       public void onClick(DialogInterface dialog, int id) { 
        dialog.cancel(); 
       } 
      }); 
      AlertDialog alertDialog = alerDialogBuilder.create(); 
      alertDialog.show(); 
     } 
    }); 
    rankDialog.show(); 
} 
+0

可以嗎告訴wh錯誤是你得到 –

+0

不幸的是,hi_chat已經停止了這個錯誤,hi_chat是活動名稱... –

+0

list.setAdapter(savednotes_adapter); f我評論這個聲明,沒有錯誤,但它不會顯示我輸入到dialog1的文本 –

回答

2

在ArrayList中,ArrayAdapter刪除最後和你的活動申報爲全球

之前的OnCreate

ArrayList<String> arrayList; 
ArrayAdapter<String> savednotes_adapter; 

裏面的OnCreate或你的方法

arrayList = new ArrayList<String>(); 
savednotes_adapter = new ArrayAdapter<String>(getApplicationContext(),android.R.layout.simple_list_item_1,arrayList); 

+0

好吧,先生,我會適用它。 tnx先生 –