protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.adshow);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
intent = getIntent();
map = (HashMap<String, Object>) intent.getSerializableExtra("map");
getPostDetailsViaNewThread();
} private void getPostDetailsViaNewThread() { // TODO Auto-generated method stub
new Thread(new Runnable() {
@Override
public void run() {
try {
postdetailsJsonArray = postService.getPostDetails("5826");
if (postdetailsJsonArray != null) {
handler.sendEmptyMessage(0);
} else {
return;
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
}).start();
}
private Handler handler = new Handler() {
@Override
// 当有消息发送出来的时候就执行Handler的这个方法
public void handleMessage(Message msg) {
super.handleMessage(msg);
initView();
}
};
private void initView(){
//postdetailsJsonArray = postService.getPostDetails("5826");
JSONObject firstJsonObject = postdetailsJsonArray.optJSONObject(0);
TextView textView_JobTitle=(TextView)findViewById(R.id.textView_JobTitle);
TextView textView_JobRelease=(TextView)findViewById(R.id.textView_JobRelease);
TextView textView_JobDetail = (TextView) findViewById(R.id.textView_JobDetail);
TextView TextView_JobTime = (TextView) findViewById(R.id.TextView_JobTime);
//JobTitle=map.get("jobTitle").toString();
//JobTime=map.get("jobTime").toString();
//JobDetail = map.get("jobDetail").toString();
//JobRelease = map.get("releasetime").toString();
textView_JobTitle.setText(firstJsonObject.optString("posttitle"));
textView_JobRelease.setText(firstJsonObject.optString("date"));
//textView_JobDetail.setText(JobDetail);
//TextView_JobTime.setText(JobTime);
}

要实现从服务器端数据库获取数据写到Android端的过程:

先调用onCreate()方法打开XML,

在调用getPostDetailsViaNewThread()线程

使用postService中定义的方法getPostDetails("5826")获得服务端传过来的JSON数组对象

postdetailsJsonArray = postService.getPostDetails("5826");

转到Handler()方法,在其中调用initView();

JSONObject firstJsonObject = postdetailsJsonArray.optJSONObject(0);定义JSON对象

initView()中用textView_JobTitle.setText(firstJsonObject.optString("posttitle"));把JSON对象写到XML对应的控件中。

Android开发日记(三)的更多相关文章

  1. 【Android开发日记】之入门篇(九)——Android四大组件之ContentProvider

    数据源组件ContentProvider与其他组件不同,数据源组件并不包括特定的功能逻辑.它只是负责为应用提供数据访问的接口.Android内置的许多数据都是使用ContentProvider形式,供 ...

  2. 【Android开发日记】之入门篇(五)——Android四大组件之Service

    这几天忙着驾校考试,连电脑都碰不到了,今天总算告一段落了~~Service作为Android的服务组件,默默地在后台为整个程序服务,辅助应用与系统中的其他组件或系统服务进行沟通.它跟Activity的 ...

  3. 【Android开发日记】之入门篇(六)——Android四大组件之Broadcast Receiver

    广播接受者是作为系统的监听者存在着的,它可以监听系统或系统中其他应用发生的事件来做出响应.如设备开机时,应用要检查数据的变化状况,此时就可以通过广播来把消息通知给用户.又如网络状态改变时,电量变化时都 ...

  4. 【Android开发日记】之入门篇(十二)——Android组件间的数据传输

    组件我们有了,那么我们缺少一个组件之间传递信息的渠道.利用Intent做载体,这是一个王道的做法.还有呢,可以利用文件系统来做数据共享.也可以使用Application设置全局数据,利用组件来进行控制 ...

  5. 【Android开发日记】之入门篇(四)——Android四大组件之Activity

    在Android中,无论是开发者还是用户,接触最多的就算是Activity.它是Android中最复杂.最核心的组件.Activity组件是负责与用户进行交互的组件,它的设计理念在很多方面都和Web页 ...

  6. 【Android开发日记】之入门篇(十四)——Button控件+自定义Button控件

        好久不见,又是一个新的学期开始了,为什么我感觉好惆怅啊!这一周也发生了不少事情,节假日放了三天的假(好久没有这么悠闲过了),实习公司那边被组长半强制性的要求去解决一个后台登陆的问题,结果就是把 ...

  7. 【Android开发日记】之入门篇(十三)——Android的控件解析

    Android的控件都派生自android.view.View类,在android.widget包中定义了大量的系统控件供开发者使用,开发者也可以从View类及其子类中,派生出自定义的控件. 一.An ...

  8. 【Android开发日记】之入门篇(十一)——Android的Intent机制

    继续我们的Android之路吧.今天我要介绍的是Android的Intent. 对于基于组件的应用开发而言,不仅需要构造和寻找符合需求的组件,更重要的是要将组件有机的连接起来,互联互通交换信息,才能够 ...

  9. 【Android开发日记】之入门篇(七)——Android数据存储(上)

    在讲解Android的数据源组件——ContentProvider之前我觉得很有必要先弄清楚Android的数据结构. 数据和程序是应用构成的两个核心要素,数据存储永远是应用开发中最重要的主题之一,也 ...

  10. 【Android开发日记】之入门篇(八)——Android数据存储(下)

    废话不多说了,紧接着来讲数据库的操作吧.Come On! 提到数据存储问题,数据库是不得不提的.数据库是用来存储关系型数据的不二利器.Android为开发者提供了强大的数据库支持,可以用来轻松地构造基 ...

随机推荐

  1. Windows下安装Redmine 2.5.2不全然指南

    我决定在项目中引入Redmine来管理开发任务和计划,至于Redmine的优点,请问度娘或者脑补一下. 互联网搜索到的.基本上都是旧版本号的. 1.2.1 的最多,我要新的啊,所以仅仅好自己来啦. 本 ...

  2. 关于 C# HttpClient的 请求

    Efficiently Streaming Large HTTP Responses With HttpClient Downloading large files with HttpClient a ...

  3. iOS 封装跑马灯和轮播效果

    代码地址如下:http://www.demodashi.com/demo/14075.html 功能概述和预览 功能描述:WSL_RollView 是基于UICollectionView实现的支持水平 ...

  4. PHP中一些有用的函数

    <?php /** * 加密解密 * * @param string $key * @param string $string * @param string $decrypt * @retur ...

  5. function声明的深刻含义和jquery属性注入区别

    在js中有两类对象 1.json对象,仅仅代表对象而已 2.function声明的对象 (1) 它定义了构造器  可以用new 对象 来初始化 数据对象 (2) 它指明对象是一个函数对象  通过后面加 ...

  6. HDUOJ -----Color the ball

    Color the ball Time Limit: 9000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)To ...

  7. scanf/sscanf %[]格式控制串的用法(转)

    scanf/sscanf %[]格式控制串的用法 scanf中一种很少见但很有用的转换字符:[...]和[ ^...]. #include<stdio.h> int main() { ch ...

  8. 程序开发使用地图API时需注意的问题(转)

    最近在做一个基于地点提醒的移动应用,当初考虑大家都心知肚明的原因,谨慎的选择了百度地图,现在想想其实完全没有必要,好的应用本来就不分国界的,最后可能还是得换回Google地图.毕竟Google地图在技 ...

  9. Dynamic DMA mapping Guide

    一.前言 这是一篇指导驱动工程师如何使用DMA API的文档,为了方便理解,文档中给出了伪代码的例程.另外一篇文档dma-api.txt给出了相关API的简明描述,有兴趣也可以看看那一篇,这两份文档在 ...

  10. (二)RocketMq入门之消息发送和接收

    一.消息产生.发送 public class Producer { public static void main(String[] args) throws MQClientException { ...