如何从runonuithread(Runnable)void中获取变量?

时间:2019-05-30 11:48:42

标签: java android-studio

所以我想在runOnUiThread中完成一些事情,尽管在这里我使用了一个示例来简化事情。我做了一个方法来返回在runOnUiThread中处理的值,并在类中存储一个String变量来存储结果(a + b)并在以后返回。我想知道是否有任何方法可以从线程方法获取输出变量?

我能够从外部获取变量,即声明为final的变量a和b,但是当我尝试将s设置为final时,出现了“无法为final赋值”的错误。

public class Activity {

    ...

    private String s;

    private String example(final String a, final String b) {
        runOnUiThread(new Runnable() {
            @Override
            public void run() {
                s = a + b;
            }
        });

        return s;
    }
}

返回值应为a + b(a和b都不为空),但现在它返回null。

0 个答案:

没有答案