Я разрабатываю приложение для Android, в котором есть 2 кнопки.
Эти две кнопки работают с данными, возвращаемыми потоком
Итак, я 1) начинаю новый поток 2) Отключаем кнопки 3) Вызываем подпрограмму
Вот код для этого
new Thread(new Runnable(){
public void run() {
getPolls();
answer.setEnabled(false);
review.setEnabled(false);
}
}).start();
1. Мой первый вопрос: как я могу узнать, что дочерняя нить завершена, чтобы я мог снова включить кнопки?
2. Метод getPolls (), вызываемый в потоке, создает arrayList. Я возвращаю его через обработчик следующим образом
//Sending the filled poll questions data to the main thread
Message qemsg = messageHandler.obtainMessage();
qemsg.obj=poll;
messageHandler.sendMessage(qemsg);
Код обработчика сообщений:
//Message Handler to get messages from the thread
private Handler messageHandler = new Handler() {
public void handleMessage(Message msg) {
polldata=(ArrayList<PollQuestion>) msg.obj;
}
};
Я сомневаюсь, как я могу отправить два разных объекта с помощью обработчика сообщений?
Пожалуйста, помогите мне.