进入显示logo界面以及导航界面,之后显示主界面

来源:互联网 发布:机械手臂如何编程 编辑:程序博客网 时间:2024/04/29 10:17
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;@Overrideprotected 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() {@Overridepublic void run() {mivHome.setBackgroundDrawable(new BitmapDrawable(getResources(), decodeStream));}});}else{throw new RuntimeException("访问失败");}} catch (Exception e) {e.printStackTrace();}};};thread.start();}}

一共分为三个Activity,第一个为显示logo的界面,一个为导航界面,一个为首页界面

这里的logo界面采用动态加载的方式,以便可以随时拿到最新的数据,例如节日时候的问候

这里的导航界面使用FlipperView进行实现。


0 0