Одним из способов является использование Handler
с очередями сообщений. Вы создаете экземпляр Handler
в главном потоке пользовательского интерфейса, а затем используете obtainMessage()
для отправки сообщений на Handler
. Так что пример будет выглядеть как
public final Handler updateTextView = new Handler(){
@Override
public void handleMessage(Message msg)
{
if(msg.what == UPDATE_TEXT){
myTextView.setText("arg1 = " + msg.arg1 +
"; arg2 = " + msg.arg2 + "; " + (String)msg.obj);
}
}
}
Тогда в своей теме вы можете позвонить:
String myString = new String("test");
updateTextView.obtainMessage(UPDATE_TEXT, 10, 20, myString).sendToTarget();
Результат, если его вызвать один раз, будет myTextView
, теперь говорит "arg1 = 10; arg2 = 20; test".