android项目开发全程直击

1:首先是我们的引导页。
   首次进入页面的时候  我们需要设置一个引导页。
  
     /**
     * 判断是否是首次启动
     */


   private SharedPreferences sharedPreferences;


   private Boolean isFirst() {


        sharedPreferences = getSharedPreferences( "isFirst",
                Activity.MODE_PRIVATE );
        int count = sharedPreferences.getInt( "isFirst", 0 );
        // 如果是首次登录则进入引导页
        if (count == 0) {
            Editor myeditor = sharedPreferences.edit();
            myeditor.putInt( "isFirst", ++ count );
            myeditor.commit();
            return true;
        } else {
            return false;
        }

    }


2:随后开启我们的动画。      注意  我们不是直接就开始跑我们的动画    而是借助handler实现我们的动画延时执行。

      


      private void handlerStart() {


new Handler().postDelayed(new Runnable() {
@Override
public void run() {
anima();
finish();
}
}, 1000);
}


     public void anima() {

  

       intent = new Intent( StartPageActivity.this, LoginActivity.class );

       startActivity( intent );
        overridePendingTransition( R.anim.fade, R.anim.hold );// 进入和出去的动画效果

   

}


   播放动画的时候  需要注意     这个地方都是针对我们的当前页面的   前面的是进入动画   后面的时候  我们这个页面将要退出的时候    展示的动画。

  另外动画的播放必须是放在。overridePendingTransition 方法必须在startActivity()或者 finish()方法的后面。





相对于我们屏幕的位置。



3:同时我们存在一个  装activity的集合。来实现我们将 展示的activity都装进去。


public class ActivityList {


public static List<Activity> activityList = new ArrayList<Activity>();


}

在我们的activity的onCreate方法里面我们都会执行这个操作。

ActivityList.activityList.add(this);



重写  返回键

/**
* 返回键重写.退出
*/
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {


if (keyCode == KeyEvent.KEYCODE_BACK) {
this.finish();
}
return super.onKeyDown(keyCode, event);
}






4:自定义  对话框  主要在我们进行网络访问的时候  使用。


最简单的:


public ProgressDialog alertProgressDialog(String message) {
        ProgressDialog progressDialog = new ProgressDialog( context );
        progressDialog.setMessage( message );
        progressDialog.setCancelable(true );// 不可以用“返回键”取消
        return progressDialog;
    }


注意  我们在得到  context的时候   我们就可以在onCreate里面    实现我们的获得context

context = this;



注意  首先讲解  ProgressDialog

          这个是进度对话框,如果我们设置了style   他将按照我们自己的样式展示    否则的话 就会按照  系统本身的样式展示。






这个地方我们没有设置style  我们设置了icon   title  message


例子如下:


package com.Aina.Android;  
  
import android.app.Activity;  
import android.app.ProgressDialog;  
import android.content.DialogInterface;  
import android.os.Bundle;  
import android.view.View;  
import android.view.View.OnClickListener;  
import android.widget.Button;  
  
public class Test_ProgressDialog extends Activity {  
    /** Called when the activity is first created. */  
    private ProgressDialog mpDialog;  
    private Button btn1,btn2;  
    private int mCount = 0;  
    @Override  
    public void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
        setContentView(R.layout.main);  
        btn1 = (Button) this.findViewById(R.id.Button01);  
        btn2 = (Button) this.findViewById(R.id.Button02);  
        btn1.setOnClickListener(new OnClickListener(){  
  
            @Override  
            public void onClick(View v) {  
                mpDialog = new ProgressDialog(Test_ProgressDialog.this);  
                mpDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);//设置风格为圆形进度条  
                mpDialog.setTitle("提示");//设置标题  
                mpDialog.setIcon(R.drawable.icon);//设置图标  
                mpDialog.setMessage("这是一个圆形进度条");  
                mpDialog.setIndeterminate(false);//设置进度条是否为不明确  
                mpDialog.setCancelable(true);//设置进度条是否可以按退回键取消  
                mpDialog.setButton("确定", new DialogInterface.OnClickListener(){  
  
                    @Override  
                    public void onClick(DialogInterface dialog, int which) {  
                        dialog.cancel();  
                          
                    }  
                      
                });  
                mpDialog.show();  
            }  
              
        });  
        btn2.setOnClickListener(new OnClickListener(){  
  
            @Override  
            public void onClick(View v) {  
                mCount = 0;  
                mpDialog = new ProgressDialog(Test_ProgressDialog.this);  
                mpDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);  
                mpDialog.setTitle("提示");  
                mpDialog.setIcon(R.drawable.icon);  
                mpDialog.setMessage("这是一个长型进度条");  
                mpDialog.setMax(100);  
                mpDialog.setProgress(0);  
                mpDialog.setSecondaryProgress(50);  
                mpDialog.setIndeterminate(false);  
                mpDialog.setCancelable(true);  
                mpDialog.setButton("取消", new DialogInterface.OnClickListener(){  
  
                    @Override  
                    public void onClick(DialogInterface dialog, int which) {  
                        dialog.cancel();  
                          
                    }  
                      
                });  
                new Thread(){  
                    public void run(){  
                        try{  
                            while(mCount<=100){  
                                mpDialog.setProgress(mCount++);  
                                Thread.sleep(100);  
                            }  
                            mpDialog.cancel();  
                        }catch(Exception ex){  
                            mpDialog.cancel();  
                        }  
                    }  
                }.start();  
                mpDialog.show();  
            }  
              
        });  
  
    }  
}






















































































  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值