Я использую эту часть кода, которая встречается во многих местах, чтобы передать sh a Toast потоку пользовательского интерфейса из фонового потока:
new Handler(Looper.getMainLooper()).post(new Runnable() {
@Override
public void run() {
Toast.makeText(MainActivityFragment.this.getActivity(), "My Message"
Toast.LENGTH_SHORT).show();
}
});
Он отлично работает. Однако, поскольку Runnable является анонимным внутренним классом с неявной ссылкой на Fragment или Activity , приведет ли это к утечке памяти? Или срок службы Toast настолько короток, что он не играет роли и скоро будет собран мусором?