6、欢迎界面的几种实现方法
来源:互联网 发布:网上开店软件排名 编辑:程序博客网 时间:2024/05/16 07:24
在进入应用的时候,往往我们首先看到的是这个应用的logo或者是应用制作公司的logo,这个便是一种欢迎界面,一个欢迎界面的好坏也会应用用户对这款应用的体验,本节我们介绍几种欢迎界面的实现方法。
一、使用动画的方式
这种方式是使用动画的监听实现的,在动画结束的时候跳转Activity,并关闭欢迎界面Activity,这种方法不需要线程,实现起来也比较简单。
首先我们先吧欢迎界面(activity_welcome.xml)的布局写出来,很简单,就是一个logo,借用下QQ。
<?xml version= "1.0" encoding ="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width= "match_parent" android:layout_height= "match_parent" android:gravity= "center" android:background= "#fff" android:orientation= "vertical" > <ImageView android:id="@+id/welcome_image" android:layout_width="150dp" android:layout_height="150dp" android:src="@drawable/icon_qq" /></LinearLayout>
我们新建一个Activity,用于实现欢迎界面效果,
public class WelcomeActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout. activity_welcome); //在欢迎界面里放了个 logo ImageView myImageLogo = (ImageView)findViewById(R.id.welcome_image ); //这里使用渐变动画,透明度从0.1渐变到1.0 AlphaAnimation alphaAnim = new AlphaAnimation(0.1f,1.0f); //设置动画的时间,这也是该欢迎界面的持续时间,以毫秒为单位 alphaAnim.setDuration(5000); //设置动画监听器 alphaAnim.setAnimationListener( new AnimationListener() { @Override public void onAnimationStart(Animation animation) { //动画开始时执行 } @Override public void onAnimationRepeat(Animation animation) { } @Override public void onAnimationEnd(Animation animation) { //动画结束时执行 Intent intent = new Intent(WelcomeActivity.this ,MainActivity.class); startActivity(intent); } }); //将动画与ImageView绑定,开始动画 myImageLogo.setAnimation(alphaAnim); } //往往欢迎界面需要屏蔽返回键 @Override public boolean onKeyDown(int keyCode, KeyEvent event) { // TODO Auto-generated method stub if (keyCode == KeyEvent.KEYCODE_BACK) { return false ; } return super .onKeyDown(keyCode, event); } @Override protected void onStop() { // TODO Auto-generated method stub super.onStop(); //该欢迎界面Activity stop时结束该Activity this.finish(); }}
别忘了在AndroidManifest.xml中配置该Activity为入口Activity,另外,为了更加的好看,我们设置了没有标题框(一般应用欢迎界面都没有标题框,有个连状态栏都没有),并且固定了屏幕方向。
<activity android:name=".WelcomeActivity" android:screenOrientation="portrait" android:theme="@android:style/Theme.Black.NoTitleBar" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name=".MainActivity" android:label="@string/app_name" > </activity>
来看一下最终的效果:
二、使用线程与Handler实现
当我们想实现界面持续一段时间切换的效果,我们最先想到的应该就是线程了,Android中使用Handler更为方便,只需要使用Handler的postDelayed方法就可以了,我们只需要将上面使用动画方式的例子中欢迎界面Activity稍加修改就可以:
public class WelcomeActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout. activity_welcome); Handler myHandler = new Handler(); //延时2000毫秒跳转Activity myHandler.postDelayed( new Runnable() { @Override public void run() { // TODO Auto-generated method stub Intent intent = new Intent(WelcomeActivity.this ,MainActivity.class); startActivity(intent); } }, 2000); } //往往欢迎界面需要屏蔽返回键 @Override public boolean onKeyDown(int keyCode, KeyEvent event) { // TODO Auto-generated method stub if (keyCode == KeyEvent.KEYCODE_BACK) { return false ; } return super .onKeyDown(keyCode, event); } @Override protected void onStop() { // TODO Auto-generated method stub super.onStop(); //该欢迎界面Activity stop时结束该Activity this.finish(); }}
可以看到同样实现了跳转的效果,但是没有了动画,这个加动画的话也比较简单,这里就不做了,有兴趣的话大家做一做。
0 0
- 6、欢迎界面的几种实现方法
- android几种欢迎界面的实现
- android几种欢迎界面的实现 .
- C# 实现启动欢迎界面的简单方法
- 制作软件界面的几种方法
- 制作光盘启动界面的几种方法
- iOS 界面跳转的几种方法
- 跳转界面的几种方法
- 【Android】欢迎界面的实现
- 广告倒计时欢迎界面的实现,倒计时欢迎界面
- Android 欢迎界面的三种实现方式
- Android欢迎界面的创建方法
- Xcode再次开启欢迎界面的方法
- Android欢迎界面的创建方法
- Android欢迎界面的创建方法
- 带动画的欢迎界面的实现
- Android更新UI界面的几种方法的使用
- C# 启动欢迎界面的实现有感
- v$session.status 和 v$process.backup 了解
- 汇编_错误锦集
- 仿真环境Omnet++安装
- HTML
- IPC通信之消息队列、信号量和共享内存
- 6、欢迎界面的几种实现方法
- 读书笔记-《Head First 设计模式》
- 第十三周项目6——工人工资的增加并排序
- Comet:Jquery+asp.net实现http长连接
- SqlServer2008--建立触发器实例
- DLL原理
- C语言
- static的作用
- 列举 Windows 所有进程(ToolHelp)