0

谢谢你给我几分钟的时间:)我正在尝试做一些我正在做的事情可能不可能的事情:D看看这个(错误的)代码:

public boolean myFunction() {
        myClassA.setOnResultSet( new myClassB() {

            @Override
            public Boolean onResultSet() {
                // TODO Auto-generated method stub
                return (Boolean)myClassA.getResult();
            }
        });


        Intent myIntent = new Intent(mInstanceContext, MediaPlayerService.class);
        myIntent.setAction("isThatParticularStateTrueOrFalse");
        mInstanceContext.startService(myIntent);

}

代码的最后 3 行向服务请求某些内容。该服务会将问题的结果保存在单例类 X 中,以便第一个类(我写给你的那个类)可以从类 X 中读取结果。但是我认为有一个问题是由事实引起的我正在使用服务:服务很慢,所以我无法立即得到我的问题的结果。这是设置结果时单例类调用方法 onResultSet() 的方式。(这是我试图自己实现的一种监听器:D)但是如何让函数 myFunction() 返回结果呢?不幸的是,我无法使 onResultSet() 函数返回结果:这是我在编写给您的代码中尝试执行的操作,但是,如您所见,它会出错。我理解为什么我会收到错误,但作为一个新手,如果不使用广播器(如果可能的话,我不想使用),我看不到解决方案。谢谢你们 :)

4

1 回答 1

0

你试过AsyncTask吗?如果您需要将更新发布到您的主 UI 线程,您可以使用Handlers

于 2012-09-03T14:02:53.020 回答