2017-01-24 51 views
0

我有一個微調器,它有一個基本的onItemSelected偵聽器連接到它。現在我想要的是添加多個其他onItemSelected偵聽器到這個微調,我希望他們都能執行。如何實現它?單個微調控制器上的多個onItemSelected偵聽器

+0

將您的所有ItemSelectedListeners到一個單一的一個。 –

+0

是的,這很簡單。但是我已經在微調器裏寫了一個包裝類,裏面有一個微調器。我正在使用此微調器來構建動態佈局。所以我需要一種方法來動態增加onItemSelected Listener內部的功能。除了你提到的之外,還有其他的做法。 – ArslanAnjum

回答

2

其設置爲監聽到你的微調,然後添加其他聽衆這樣的:

class ItemSelectedMultiListener implements OnItemSelectedListener { 

    private List<OnItemSelectedListener> mListeners = new ArrayList<>(); 

    public void addListener(OnItemSelectedListener listener) { 
     mListeners.add(listener); 
    } 

    public void removeListener(OnItemSelectedListener listener) { 
     mListeners.remove(listener); 
    } 

    @Override 
    public void onItemSelected(...args...) { 
     for (OnItemSelectedListener listener : mListeners) { 
      listener.onItemSelected(...args...); 
     } 
    } 

    @Override 
    public void onNothingSelected(...args...) { 
     for (OnItemSelectedListener listener : mListeners) { 
      listener.onNothingSelected(...args...); 
     } 
    } 
} 
相關問題