簡體   English   中英

Android有多個聽眾嗎?

[英]Can Android have multiple listeners?

說我有5個按鈕。 對於每個按鈕,我希望能夠觸發一個監聽器。 一旦偵聽器被觸發,我想在我的sdk中觸發異步任務,然后讓sdk返回異步任務的狀態。

1)我是否寫了一個單獨的監聽器/按鈕? 我讀到某處我在android中只能有一個注冊的監聽器,如果這是真的我如何處理許多監聽器?

2)如何將SDK的postExecute調用結果返回到api級別?

1)我是否寫了一個單獨的監聽器/按鈕? 我讀到某處我在android中只能有一個注冊的監聽器,如果這是真的我如何處理許多監聽器?

一個視圖只能有一個每種類型的偵聽器,即一個Button不能有兩個OnClickListeners 不要將此與一個偵聽器可以附加到多個視圖的事實混淆,即ButtonA和ButtonB可以具有相同的OnClickListener

2)如何將SDK的postExecute調用結果返回到api級別?

你的術語不對,但你去的時候就會搞清楚。 通常onPostExecute()將調用另一個方法或直接使用View:

@Override
protected void onPostExecute(String result) {
    doSomething(result);
    textView.setText(result);
}

最簡單的方法是在活動中設置一個偵聽器,然后處理多個按鈕。 您可以使用OnKeyListener類執行此操作 然后,您可以切換哪個鍵被擊中,為您希望操作的按鈕設置案例,並啟動AsyncTask

我不太確定你的意思是“return postExecute”。 但是,如果你看一下AsyncTask,你可以看到如何使用正確的參數將結果返回到onPostExecute。 當您實例化AsyncTask的子類時,您可以輕松地傳入您希望執行回調的活動或上下文。

您可以擁有多個偵聽器,並根據您要對其執行的操作,每個按鈕可以有一個。 postExecute() ,它在UI線程上運行,因此您可以從那里顯示結果或用它做任何你想做的事情。 有關詳細信息,您需要提供一些您嘗試過的代碼,並准確解釋您遇到問題的位置。 如果你還沒有,請通過

有關入門的Android文檔

此鏈接描述了AsynTask

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM