package com.tele.test;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.sql.Connection;
import javax.crypto.spec.IvParameterSpec;
import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Color;
import android.graphics.drawable.BitmapDrawable;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.os.SystemClock;
import android.view.View;
import android.view.Window;
import android.widget.ImageView;
import com.android.volley.Request.Method;
import com.tele.test.view.MyViewFlipper;
/**
* 开始界面,由于加载公司logo和初始化数据
*/
public class StartActivity extends Activity {
/**
* 记录是否首次登陆的标志,true为首次
*/
private boolean isFirst=true;
private SharedPreferences preferences;
private Handler handler=new Handler(){
public void handleMessage(Message msg) {
jumpToOther();
};
};
private ImageView mivHome;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.aty_start);
//创建文件存储
preferences = getSharedPreferences("config", MODE_PRIVATE);
isFirst=preferences.getBoolean("isFirst", true);
mivHome = (ImageView) findViewById(R.id.start_iv_home);
doSomething();
//可以使用Handler进行跳转,2s后进行跳转
handler.sendEmptyMessageDelayed(1, 2000);
}
/**
* 跳转到其他页面
*/
private void jumpToOther() {
Intent intent=new Intent();
//如果不是第一次进入则进入导航界面
if(isFirst){
intent.setClass(this, MyViewFlipper.class);
//保存数据
Editor edit = preferences.edit();
edit.putBoolean("isFirst", false);//不是第一次登陆
edit.commit();
}else{//否则直接进入首页
intent.setClass(this, MainActivity.class);
}
startActivity(intent);
this.finish();
}
/**
* 耗时的操作,例如加载一部分数据,
*/
private void doSomething() {
// SystemClock.sleep(2000);
Thread thread=new Thread(){
public void run() {
//线程访问网络数据
String urlString="http://img3.imgtn.bdimg.com/it/u=2784767165,3850836158&fm=23&gp=0.jpg";
try {
URL url=new URL(urlString);
HttpURLConnection connection=(HttpURLConnection) url.openConnection();
connection.setReadTimeout(5000);//读取时间
connection.setRequestMethod("GET");//设置连接方式
connection.setConnectTimeout(2000);//连接超时时间
connection.connect();
int responseCode = connection.getResponseCode();//获取返回状态码
//int 采用截掉尾数的方式
if(responseCode==200){//访问成功
InputStream inputStream = connection.getInputStream();
final Bitmap decodeStream = BitmapFactory.decodeStream(inputStream);
//在主线程中设置
runOnUiThread(new Runnable() {
@Override
public void run() {
mivHome.setBackgroundDrawable(new BitmapDrawable(getResources(), decodeStream));
}
});
}else{
throw new RuntimeException("访问失败");
}
} catch (Exception e) {
e.printStackTrace();
}
};
};
thread.start();
}
}
一共分为三个Activity,第一个为显示logo的界面,一个为导航界面,一个为首页界面
这里的logo界面采用动态加载的方式,以便可以随时拿到最新的数据,例如节日时候的问候
这里的导航界面使用FlipperView进行实现。