我正在爲一個android應用程序提取一些html。我遇到的一個問題是,下面的代碼中的線程之後的代碼未被執行。我覺得我正在犯一個業餘的錯誤,但我不知道它是什麼。我知道arraylist正在被填充,從將其內容打印到createTimetable()方法中的logcat中。 但}).start();
之後的任何內容都沒有完成。有任何想法嗎?線程未被執行後的代碼
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_display_online_timetable);
Intent intent = getIntent();
value = intent.getStringExtra("url");
new Thread(new Runnable() {
public void run() {
try {
Log.d("url",value);
doc = Jsoup.connect(value).get();
Element monday = doc.select("p ~ table").first();
Element tuesday = doc.select("p ~ table").get(1);
Element wednesday = doc.select("p ~ table").get(2);
Element thursday = doc.select("p ~ table").get(3);
Element friday = doc.select("p ~ table").get(4);
monday.select("tr:eq(0)").remove();
tuesday.select("tr:eq(0)").remove();
wednesday.select("tr:eq(0)").remove();
thursday.select("tr:eq(0)").remove();
friday.select("tr:eq(0)").remove();
final Elements mon = monday.select("td");
final Elements tues = tuesday.select("td");
final Elements wed = wednesday.select("td");
final Elements thurs = thursday.select("td");
final Elements fri = friday.select("td");
Log.d("thread","sdsddssd");
createTimetable(monClasses, mon, day1);
createTimetable(tuesClasses, tues, day2);
createTimetable(wedClasses, wed, day3);
createTimetable(thurClasses, thurs, day4);
createTimetable(friClasses, fri, day5);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}).start();
Log.d("sdfsdfsdf", "HELLO");
for(int i = 0; i<monClasses.size();i++)
{
Log.d("monday", monClasses.get(i).toString());
}
mSectionsPagerAdapter = new SectionsPagerAdapter(
getSupportFragmentManager());
}
您可以發佈logcat的輸出嗎? – 2013-04-20 21:58:43
您應該嘗試減少您發佈到最小片段的代碼,以便重現您的問題。這顯然與本週的日子無關,所有這一切使得這個問題不愉快通過 – slezica 2013-04-20 21:59:32
logcat圖像添加 – user2236580 2013-04-20 22:09:59