2016-12-23 59 views
0

我目前有一个绑定的服务与我的主要活动。运行绑定服务和线程

我想知道是否有可能有一个线程运行在这个绑定服务,可以将整数传递给我的主要活动。此服务需要使用任何新的随机数字整数自动更新我的主要活动的文本视图,无需单击按钮。

我应该看看处理程序?或消息/捆绑?

任何帮助,将不胜感激!谢谢 !

+0

使用处理程序,你可以做到 –

+0

是处理程序的正确方法吗?如果是这样,我如何将当前处理程序从主要活动传递给服务? –

回答

1

您可以定义一个接收器的MainActivity,您可以使用发送广播到接收器来更新UI ..这是一个简单的方法来做到这一点

在服务只要定义一个意图,把值到它像follwing

Intent i = new Intent(); 
i.setAction("RECEIVERACTION"); 
i.putExtra("data", "mydata"); 
sendBroadcast(i); 

,并在您的活动

public static class Receiver extends BroadcastReceiver { 
    @Override 
    public void onReceive(Context context, Intent intent) { 
     String data = intent.getStringExtra("data"); 
     textView.setText(data); 
    } 
} 

希望它可以帮助!

+0

LocalBroadcastManager.getInstance(this).registerReceiver(new MainActivity.Receiver(),new IntentFilter(“RECEIVERACTION”));不要忘记在您的服务中添加上面的行 –