我很努力讓一個對象從void函數正確地轉移到for循環,以便它可以迭代到Android工作室的線性佈局。有人能夠概述如何做到這一點,以及背後的邏輯。在Java中的範圍,當用於void然後for循環
Backendless.Persistence.of(Tasks.class).find(
new AsyncCallback<BackendlessCollection<Tasks>>() {
@Override
public void handleResponse(BackendlessCollection<Tasks> tc) {
List<Tasks> tasks = tc.getData();
Log.d("ToDo", "Retrieved " + tasks.size() + " tasks");
}
@Override
public void handleFault(BackendlessFault e) {
Log.d("ToDo", "Error: " + e.getMessage());
}
});
LinearLayout taskList = (LinearLayout) findViewById(R.id.taskList);
//repeat for each task in list of tasks
for (Tasks task :tasks) {
//retrieve task text form object and log it
String taskText = task.getTask();
Log.d("ToDo", taskText);
//create new text view and set task text
TextView textView = new TextView(getApplicationContext());
textView.setText(taskText);
//add text view to linear layout
taskList.addView(textView);
}
從什麼樣子,'tasks'甚至不打算通過你達到你的'for'循環的時間來計算。異步回調的重點在於將來會調用該回調函數,而您無法控制它。 –
嘗試使用接口在此進行通信。在異步任務類中定義一個接口並在類(片段或活動)中實現它的方法(在你的情況下handleResponse()和handleFault())。 –