2016-12-01 6 views
1

私はダイアログを持っています。ダイアログの中にダイアログがあります。
私の最初のダイアログにダイナミックListViewの結果を表示し、その最初のダイアログでEditTextを含む第2のダイアログを呼び出すボタンをクリックして、新しい値のダイナミック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

内のOnCreate

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

する前に、あなたの活動にグローバルとして

を宣言することができますwhを教えてエラーが発生した場合は、 –

+0

残念ながら、hi_chatはエラーを停止しています。hi_chatはアクティビティ名です... –

+0

list.setAdapter(savednotes_adapter);私はこのステートメントをコメントしますがエラーはありませんが、dialog1に入力したテキストは表示されません。 –

答えて

2

ArrayListを、ArrayAdapterに最終外し、OnCreateイベントやあなたの方法

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

+0

ok sir私はそれを適用します。 tnxさん –

関連する問題