This post says (in reference to the Android Doc) that any method on a view has to be called from the UI thread. However, I have not ran into any problem yet, though I set the OnClickListeners of Buttons in a non-UI-thread. Is this a situation of "You realy should not do this, even though you can." or is there a subset of methods that can actually be called from non-UI-threads?
If the latter is true, which operations are part of the subset?
EDIT
Example code:
Thread setUpActivity = new Thread(new Runnable() { @Override public void run() { while (serviceConnection.getAppController() == null){ try { Thread.sleep(1); } catch (InterruptedException e) { e.printStackTrace(); } } btAddTag.setOnClickListener(onAddTag); btGo.setOnClickListener(onGo); runOnUiThread(new Runnable() { @Override public void run() { setUpSpinner(); } }); } }); setUpActivity.start();