AbstractBasicDataHandler

AbstractBasicDataHandler

我想在网上画一些要求的东西,然后这是核心工具(省略画图逻辑):

public abstract class AbstractBasicDataHandler extends AbstractHandler{
    private DataProvider tp = new DataProvider();

    @Override
    protected void onReadyToDraw(Canvas c,int params) {
        byte[] data = tp.getDrawableData(params);
        doRender(c, data);
    }

    protected abstract void doRender(Canvas c, byte[] data);
}


AbstractBasicDataHandler将完成数据请求的工作,然后AbstractBasicDataHandler的任何子类将仅专注于呈现工作,如下所示:

public class AnyClass extends AbstractBasicDataHandler{
    @Override
    doRender(Canvas c, byte[] data){
        //render according to the data
    }
}


但是,问题在于数据请求是一项耗时的工作,这意味着数据可能不会立即返回。

那么有满足这种要求的经验吗?

最佳答案

是的,您可以使用Asynctask在其doInBackground()中执行其网络操作,并在其postExecute()中执行您的UI操作。

10-07 20:51