解决:在主要活动中需要获得JSON对象的代码
jsonObject [0] = new AsyntaskGetWeekFood(970305).execute()。get(); IN TRY CATCH
我制作了一个Asynctask类
int date ;
private Context context;
public AsyntaskGetWeekFood(Integer week) {
this.date = week ;
}
@Override
protected JSONObject doInBackground(Integer... params) {
JSONObject jsonfood = new JSONObject();
Document document = null;
try {
document = Jsoup.connect("http://self.shahroodut.ac.ir/Ghaza.aspx?date=" + date).get();
} catch (IOException e) {
e.printStackTrace();
}
for (int i = 0; i < 7; i++) {
Element sob = document.select("#BulletedListC" + i).first();
Element shab = document.select("#BulletedListS" + i).first();
try {
jsonfood.put("c"+i,sob.text());
jsonfood.put("s"+i,shab.text());
} catch (JSONException e) {
e.printStackTrace();
}
}
return jsonfood;
}
@Override
protected void onPostExecute(JSONObject jsonObject) {
super.onPostExecute(jsonObject);
}
如何将jsonfood返回到主活动类? 我已经发布了我的jsonfood,正确包含了如何在主要活动中给出json对象的数据?...请帮助我!
答案 0 :(得分:0)
好的,这是你的postExecute代码
@Override
protected void onPostExecute(JSONObject jsonObject) {
super.onPostExecute(jsonObject) };
现在您可以声明一个接口
interface GetData { void onGetData(JsonObject object);}
现在您可以引用它并在postExecute
方法中设置值
喜欢:@Override
protected void onPostExecute(JSONObject jsonObject) {
mGetData.onGetData(jsonObeject)};
您必须在UI类中实现该接口。