0

我有一個具有三個相同按鈕和三個相同TextView的活動。每個按鈕的onClick通過下面的代碼調用AlertDialog:如何從AlertDialog的列表視圖獲取onItemclick

PickerDialog = new PickerDialogFragment(); 
    PickerDialog.show(getSupportFragmentManager(), "PickerDialog"); 

我的AlertDialog有一個EditText與addTextChangedListener

searchText.addTextChangedListener(new TextWatcher() { 
     @Override 
     public void beforeTextChanged(CharSequence s, int start, int count, int after) { 
     } 
     @Override 
     public void onTextChanged(CharSequence s, int start, int before, int count) { 
      adapter.getFilter().filter(s); 
      adapter.notifyDataSetChanged(); 
     } 
     @Override 
     public void afterTextChanged(Editable s) { 
     } 
    }); 

和列表視圖適配器擴展的CursorAdapter並實現過濾

listView.setTextFilterEnabled(true); 
    adapter.setFilterQueryProvider(new FilterQueryProvider() { 
     @Override 
     public Cursor runQuery(CharSequence constraint) { 
      return dbHelper.filterCodes(db, constraint); //returns a cursor 
     } 
    }); 

我是什麼試圖實現的是直接更改AlertDialog中Listview中用戶選定值的按鈕文本。

除此之外如果可能的話,我想設置與過濾列表中的用戶選擇的值的EditText的值,然後正面按鈕的點擊我想每個按鈕的值

所以我的問題是什麼走了進去listview.onItemClickListener和builder.setPositiveButton和builder.setNegativeButton

我也不能確定哪個按鈕調用的AlertDialog,使不同alertdialog每個按鈕只會增加行代碼

回答

2

添加一個「廉政渣油」參數給喲的構造函數烏爾班。用新的PickerDialogFragment(R.id.button1);'實例化對話框。在findViewById中使用resid獲取按鈕實例並設置其文本。

相關問題