收藏本站 收藏本站
积木网首页 - 技术学院 - 软件测试 - 网站黄页 - 常用手册 - 站长工具 - 技术社区
首页 > Android > Android技巧 > 正文

首页 - PHP - 数据库 - 操作系统 - 游戏开发 - JS - Android - MySql - Redis - MongoDB - Win8 - Shell编程 - DOS命令 - jQuery - CSS样式 - Python - Perl

Access - Oracle - DB2 - SQLServer - MsSql2008 - MsSql2005 - Sqlite - PostgreSQL - node.js - extjs - JavaScript vbs - Powershell - Ruby

[安卓]新闻客户端(一)Splash

这里主要是一个图片实现的动画,并且需要有一个SharedPreferences,并抽成一个工具,来判断是否第一次进入,第一次进入先进入引导页再进入主页

布局

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/rl_splash_all"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:background="@drawable/splash_bg_newyear">
    <ImageView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:src="@drawable/splash_horse_newyear">
    </ImageView>
</RelativeLayout>

需要一个监听器,到了最后一个画面,则需要准备跳转
private void setAnimation() {
		//第三步  动画效果合集,需要同时生效,但是有彼此不同的时间插值,需要置为false
		AnimationSet set = new AnimationSet(false);
		
		//第四步(1) 旋转
		RotateAnimation rotate = new RotateAnimation(0, 360,
				Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF,
				0.5f);//相对于自己,两个坐标轴的中点,也就是以图片中心点旋转
		rotate.setDuration(3000);// 时间
		rotate.setFillAfter(true);// 留在最后一个帧画面

		//第四步(2) 缩放
		ScaleAnimation scale = new ScaleAnimation(0, 1, 0, 1,
				Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF,
				0.5f);
		scale.setDuration(3000); 
		scale.setFillAfter(true);

		//第四步(3) 渐变
		AlphaAnimation alpha = new AlphaAnimation(0, 1);
		alpha.setDuration(3000);
		alpha.setFillAfter(true);

		//第五步(1) 将效果增加到集合里
		set.addAnimation(rotate);
		set.addAnimation(scale);
		set.addAnimation(alpha);
		
		// 第六步 设置动画监听				
		set.setAnimationListener(new AnimationListener() {			
			@Override
			public void onAnimationStart(Animation animation) {
				// TODO Auto-generated method stub
				
			}
			@Override
			public void onAnimationRepeat(Animation animation) {
				// TODO Auto-generated method stub
				
			}
			@Override
			public void onAnimationEnd(Animation animation) {
				// TODO Auto-generated method stub
				jumpNextPage();
			}
		});		
		//第五步(2) 在整个布局上启动所有动画效果
		rl_splash_all.startAnimation(set);
	}


工具

public class PrefUtils {

	public static final String PREF_NAME = "config";

	public static boolean getBoolean(Context ctx, String key,
			boolean defaultValue) {
		SharedPreferences sp = ctx.getSharedPreferences(PREF_NAME,
				Context.MODE_PRIVATE);
		return sp.getBoolean(key, defaultValue);
	}

	public static void setBoolean(Context ctx, String key, boolean value) {
		SharedPreferences sp = ctx.getSharedPreferences(PREF_NAME,
				Context.MODE_PRIVATE);
		sp.edit().putBoolean(key, value).commit();
	}
}


判断

//第七部 跳转
	private void jumpNextPage() {
		//判断之前有没有显示过新手引导
		boolean userGuide = PrefUtils.getBoolean(this, "is_user_guide_showed",
				false);
		if (!userGuide) {
			// 跳转到新手引导页
			startActivity(new Intent(SplashActivity.this,GuideActivity.class));
		} else {  
			startActivity(new Intent(SplashActivity.this,MainActivity.class));
		}

		finish();
	}


版权声明:本文为博主原创文章,未经博主允许不得转载。

[安卓]新闻客户端(二)引导页
引导页是第一次进APP才有的,他的效果是左右滑动几张图片,展现一些功能之类的,最后一张图片应该有个button,点击后计入主页面,同时在页面下部

[安卓]新闻客户端(三) main
坑版权声明:本文为博主原创文章,未经博主允许不得转载。

android EditText输入变化事件详解
问题:androidEditText输入变化事件详解解决办法:editText.addTextChangedListener(newTextWatcher(){publicvoidafterTextChanged(Editables){//TODOAuto-generatedmethodstub//s:变化后的所有

本周排行

更新排行

强悍的草根IT技术社区,这里应该有您想要的! 友情链接:b2b电子商务
Copyright © 2010 Gimoo.Net. All Rights Rreserved  京ICP备05050695号