1、我们用过okhttp的小伙伴应该都知道,使用OK的execute请求数据是需要创建子线程的,而这时使用Handler进行延时一秒发送消息,然后执行跳转很容易出现错误,这个时候我们可以使用另外的一种方式,再创建一个子线程,让这个子线程sleep三秒种然后进行执行跳转语句。xml文件很简单只是使用了一个ImageView控件就不书写xml文件了,下面是Java代码:
private void setQINGQIU() {
new Thread(){
@Override
public void run() {
String url = "要请求的目标地址";
JSONObject jsonObject = new JSONObject();
Request request = new Request.Builder().url(url).get().build();
OkHttpClient okHttpClient = new OkHttpClient();
try {
Response response = okHttpClient.newCall(request).execute();
final String string = response.body().string();
runOnUiThread(new Runnable() {
@Override
public void run() {
Gson gson = new Gson();
Message message = gson.fromJson(string, message.class);
String Img = //要获取的图片地址
Glide.with(activity.this).load(Img).into(Img);
}
});
} catch (IOException e) {
e.printStackTrace();
}
}
}.start();
Thread tiaozhuan = new Thread() {
@Override
public void run() {
try {
Thread.sleep(3000);
Intent intent = new Intent(activity.this,要跳转的文件名称.class);
startActivity(intent);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
};
tiaozhuan.start();
}
以上Java代码就可以实现延迟三秒进行页面的跳转了。