码迷,mamicode.com
首页 > 移动开发 > 详细

android studio 欢迎页和引导页

时间:2019-07-25 23:42:40      阅读:187      评论:0      收藏:0      [点我收藏+]

标签:resource   color   main   content   跳转   部分   indicator   context   lin   

技术图片

 

这是我第一次接触到android学习,现在模仿拉手网的welcomeactivity

activity_welcome.xml 

<resources>

<!-- Default screen margins, per the Android Design guidelines. -->
<dimen name="activity_horizontal_margin">16dp</dimen>
<dimen name="activity_vertical_margin">16dp</dimen>
<dimen name="indicator_right_padding">10dp</dimen>
<dimen name="indicator_corner_radius">12dp</dimen>
<dimen name="indicator_internal_padding">4dp</dimen>
<dimen name="header_footer_left_right_padding">24dp</dimen>
<dimen name="header_footer_top_bottom_padding">12dp</dimen>

</resources>

welcomeactivity.java

package com.lzh.lashou;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;

import android.support.annotation.Nullable;

public class WelcomeActivity extends Activity {
@Override
public void onCreate(@Nullable Bundle savedInstanceState) { //注意新版本中onCreate的方法两个参数去掉后面的参数,否则调试后会出现空白页
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_welcome);
    //3s后进入mainactivity
new Handler(new Handler.Callback() {
@Override
public boolean handleMessage(Message message) {
startActivity(new Intent(WelcomeActivity.this,MainActivity.class));
return true;
}
}).sendEmptyMessageDelayed(0,3000);/*延迟3s*/

}

}

所有的页面都要在
mainifest中注册

//设置起始页为欢迎页面
<activity android:name=".welcomeactivity" />
<activity android:name=".mainactivity"/>

技术图片

 


出现的问题,大部分就是调试后出现空白页,解决方法为重载onCreate()方法传参时只传递第一个,后一个参数删除。

下面开始进入引导页
创建yindaoactivity.java + activity_yindao.xml 同时别忘了在manifest.xml中注册,为了判断用户是否为第一次进入页面,所以在项目中添加util.ToolKits(工具类)
public class ToolKits{
   
  public static SharedPerferences getSharedPerferences(Context context){
    return context.getSharesPerferences("包名",Context.MODE_PRIVATE)//设计为私有模式
  }
  //设置共享参数
  public static void putBoolean(Context context,String key,boolean value){
    SharedPerferences sharedPerferences=getSharedPerferences(context);
    //获取共享参数的编辑器
    SharedPerferences.Editor editor=sharedPerences.edit();
    //通过编辑器提交一个boolean类型的参数
    editor.putBoolean(key,value);
    editor.commit();  
  }
  
  
//获取共享参数
public static boolean GetBoolean(Context context,String key,boolean defaultValue){
return getSharedPreferences(context).getBoolean(key,defaultValue);
}
}
在welcome中添加判断,调用ToolKits
public class WelcomeActivity extends Activity {

public static final String IS_FIRST="is_first";

@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_welcome);
new Handler(new Handler.Callback() {
@Override
public boolean handleMessage(Message message) {
if(ToolKits.GetBoolean(WelcomeActivity.this,IS_FIRST,false))
{
//如果默认值为false,则没有登陆过,跳转到引导页
startActivity(new Intent(WelcomeActivity.this,yindaoactivity.class));
//将boolean值设置为true
ToolKits.PutBoolean(WelcomeActivity.this,IS_FIRST,true);
}else{
//否则跳转为主页
startActivity(new Intent(WelcomeActivity.this,MainActivity.class));
}
ToolKits.PutBoolean(WelcomeActivity.this,IS_FIRST,true);
return true;
}
}).sendEmptyMessageDelayed(0,3000);/*延迟3s*/

}














android studio 欢迎页和引导页

标签:resource   color   main   content   跳转   部分   indicator   context   lin   

原文地址:https://www.cnblogs.com/who-am-i/p/11247349.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!