我有一個pojo方法來生成一個位圖。完成後,我想將位圖引入UI活動。這是一個樣本,但在這裏它是:Android監聽器/回調如何?
private void sendBitmap(Bitmap bitmap) {
// TODO - I'm in the pojo where I want to send the bitmap
}
FYI:我想通知UI活動是我的項目之外。我的意思是,我的項目是一個SDK,這樣其他開發人員可以在獲得該信息後立即獲取這些信息。
我一直在試圖弄清楚,但有點困惑。
- 我需要一個「回調」接口嗎?
- 還是「聽衆」界面?
- 還是兩者兼而有之?
我在MyActivity中創建了一個回調接口。到現在爲止還挺好。這是什麼樣子至今:
import android.graphics.Bitmap;
public class MyActivity {
// protected void whateverOtherMethods (Bundle savedInstanceState)
// {
// .
// .
// .
// .
// .
// .
//
// }
/**
* Callback interface used to supply a bitmap.
*/
public interface MyCallback {
public void onBitmapReady(Bitmap bitmap);
}
}
演示應用的DoSomethingActivity可以實現我所創建的回調接口。這是回調的演示應用程序的DoSomethingActivity實現:
private final MyCallback myCallback = new MyCallback() {
@Override
public void onBitmapReady(Bitmap bitmap) {
// TODO - do something with the bitmap
}
};
什麼是我缺少通知回調步驟?也許我幾乎可以擁有它,但是我很困惑,我在這裏尋找一些幫助。
UPDATE:
OK,我已經添加了 「工具」 爲我的回調 「BitmapCallback」 界面進入POJO。那就是:
public class ProcessImage implements BitmapCallback {
/**
* pojo method to return bitmap
*/
private void sendBitmap() {
this.onBitmapReady(bitmap);
}
@Override
public void onBitmapReady(Bitmap bitmap) {
// we still need to send the bitmap to cusomer App.
}
我不能回調的定義從SDK活動動,因爲我想客戶的應用,以實現他們的代碼來處理位圖時,它返回到客戶的應用回調。
這是在我的活動回調接口:
public interface BitmapCallback {
public void onBitmapReady(Bitmap processedBitmapy);
}
這裏是在客戶的應用程序,實現:
private final BitmapCallback bitmapCallback = new BitmapCallback()
{
@Override
public void onBitmapReady(Bitmap bitmap) {
// TODO Auto-generated method stub
}
};
叫我啞巴,但我有一個很難得到我的頭繞着這個。
你在回看什麼事件?如果它的點擊事件,你應該看看OnClickListener,你可以調用你的自定義偵聽器。 http://developer.android.com/reference/android/view/View.OnClickListener.html – Peshal 2014-09-23 23:52:44
爲什麼會反對票?這是一個基於一些位圖被改變的回調。它與UI無關。 – Patricia 2014-09-24 15:13:05