首先,创建一个android studio项目。
然后,在java--包名下先创建三个包
UI界面包
-----MainActivity(主页面)
----SplashActivity(欢迎界面(通俗讲就是广告或者一张宣传图))
----GuideActivity(新手指导界面)
Util工具包
--- SPUtil( SP= SharedPreference)
Config常量包
---constant(fianl 常量)
创建好这些基本的东西以后,我们开始写代码。
(这个时候呢,经常会想,应该做什么呢,该从哪里开始写呢?当然是从欢迎界面开始写,理由很简单,这是App最开始的部分,写这个还是要稍微按点顺序,这样子思路比较清晰,写起来也比较有成就感)
activity_splash.xml
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_splash" android:layout_width="match_parent" android:layout_height="match_parent" android:background="这里添加你需要的欢迎页的图片(drawable目录下)"// 简单的图片 tools:context="company.com.happy.ui.SplashActivity"> </RelativeLayout>
写完了xml的布局以后,就要开始在SplashActivity里面开始写代码了,但是由于MVC模式,我封装了一个SPUtil的工具类和一个constant常量类,欢迎界面因为我设置的是3秒以后自动跳转的功能(这里也可以倒计时跳转)
Constant.java
public class Constant { public static final String FIRST="first"; }
SPUtil.java
public class SPUtil {
SharedPreferences sp;
//通过构造器重载.以不同的方式获得偏好设置的文件
public SPUtil(Context context, String name) {
sp = context.getSharedPreferences(name, Context.MODE_PRIVATE);
}
public SPUtil(Context context) {
sp = PreferenceManager.getDefaultSharedPreferences(context);
}
public boolean isFirst() {//用于判断是否第一次登陆
return sp.getBoolean(Constant.FIRST, true);
}
public void setFirst(boolean flag){
SharedPreferences.Editor editor = sp.edit();//获得偏好设置的编辑器
editor.putBoolean(Constant.FIRST,flag);//编辑器获得数据
editor.commit();//提交
}
}
SplashActivity.java
public class SplashActivity extends Activity { SPUtil spUtil; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_splash); spUtil=new SPUtil(this); //界面停留几秒钟 //是否第一次使用进行相应的界面跳转 new Handler().postDelayed(new Runnable() { @Override public void run() { //读取偏好设置中的值 //根据是否第一次进行 Intent intent; if (spUtil.isFirst()){ //新手知道页跳转 intent = new Intent(SplashActivity.this,GuideActivity.class); spUtil.setFirst(false); }else{ //向主页面跳转 intent = new Intent(SplashActivity.this,MainActivity.class); } //启动跳转任务 startActivity(intent); //结束该页面 finish(); } },3000);//这里的时间有自己掌握(1000=1秒) } }
创建GuideActivity.java和MainActivity(这俩个界面暂时不用做太多处理,创建出来用于测试是否第一次登陆跳转)
有什么问题可以留言探讨,大神也欢迎指导,大家一起进步。