项目Splash页面的开发与设计
项目Splash页面的开发与设计
首先建立一个安卓的项目,然后修改manifest.xml文件,修改应用程序的logo和显示名称,效果图如下:

对应的代码如下:

1 <?xml version="1.0" encoding="utf-8"?>
2 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
3 package="lq.wangzhen.mobilesafe"
4 android:versionCode="1"
5 android:versionName="1.0" >
6 <uses-sdk
7 android:minSdkVersion="10"
8 android:targetSdkVersion="10" />
9 <application
10 android:allowBackup="true"
11 android:icon="@drawable/callmsgsafe" //设置应用程序的logo
12 android:label="@string/app_name" //设置应用程序的名称
13 android:theme="@style/AppTheme" >
14 <activity
15 android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
16 android:name="lq.wangzhen.mobilesafe.SplashActivity"
17 android:label="@string/app_name" >
18 <intent-filter>
19 <action android:name="android.intent.action.MAIN" />
20
21 <category android:name="android.intent.category.LAUNCHER" />
22 </intent-filter>
23 </activity>
24 </application>
25 </manifest>

使用到的strings.xml文件如下:

1 <?xml version="1.0" encoding="utf-8"?>
2 <resources>
3
4 <string name="app_name">手机卫士</string>
5 <string name="action_settings">Settings</string>
6 <string name="hello_world">Hello world!</string>
7
8 </resources>

更改完成应用程序的图片以后,下面开始编写应用程序的启动界面,界面的效果图如下:

这里我们包含了一下的几个信息:
- 当前应用程序的版本号;
- 启动时的一个ProgressBar;
- 背景图片
- 设置显示为全屏幕显示,没有标题栏和状态栏
建立一个SplashActivity,对应的布局文件为:activity_splash.xml文件,然后在manifest.xml文件中配置当前的Acitivity,代码如下:

1 <activity
2 android:theme="@android:style/Theme.NoTitleBar.Fullscreen" //配置当前的Activity是全屏显示的
3 android:name="lq.wangzhen.mobilesafe.SplashActivity"
4 android:label="@string/app_name" >
5 <intent-filter>
6 <action android:name="android.intent.action.MAIN" /> //配置当前的Activity是应用程序的启动页面
7
8 <category android:name="android.intent.category.LAUNCHER" />
9 </intent-filter>
10 </activity>

编辑完成以后,完成activity_spalsh.xml文件,完成Spash页面的布局:

1 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
2 xmlns:tools="http://schemas.android.com/tools"
3 android:layout_width="match_parent"
4 android:layout_height="match_parent"
5 android:paddingBottom="@dimen/activity_vertical_margin"
6 android:paddingLeft="@dimen/activity_horizontal_margin"
7 android:paddingRight="@dimen/activity_horizontal_margin"
8 android:paddingTop="@dimen/activity_vertical_margin"
9 tools:context=".SplashActivity"
10 android:background="@drawable/logo2" > //配置当前Activity的背景图片
11
12 <TextView //显示当前应用程序的版本号
13 android:layout_width="wrap_content"
14 android:layout_height="wrap_content"
15 android:id="@+id/tv_splash_version"
16 android:text="版本号:"
17 android:layout_alignParentRight="true"
18 android:textColor="#FF0000"
19 android:textSize="20sp"/>
20
21 <ProgressBar
22 android:layout_width="wrap_content"
23 android:layout_height="wrap_content"
24 android:layout_centerHorizontal="true"
25 android:layout_alignParentBottom="true"
26 android:layout_marginBottom="130dp"/>
27
28 </RelativeLayout>

然后在SpalshActivity类中加载以上的activity_splash.xml布局文件,然后运行程序即得到以上的效果图。

1 package lq.wangzhen.mobilesafe;
2
3 import android.os.Bundle;
4 import android.app.Activity;
5 import android.content.pm.PackageInfo;
6 import android.content.pm.PackageManager;
7 import android.content.pm.PackageManager.NameNotFoundException;
8 import android.view.Menu;
9 import android.widget.TextView;
10
11 public class SplashActivity extends Activity {
12 private TextView tv_splash_version;
13 @Override
14 protected void onCreate(Bundle savedInstanceState) {
15 super.onCreate(savedInstanceState);
16 setContentView(R.layout.activity_splash);
17 this.tv_splash_version = (TextView) this.findViewById(R.id.tv_splash_version);
18 this.tv_splash_version.setText("版本号:"+getVersion()); //设置应用程序的版本号
19 }
20 /**
21 * 取得应用的版本号
22 * @return
23 */
24 public String getVersion(){
25 PackageManager pm = getPackageManager(); //取得包管理器的对象,这样就可以拿到应用程序的管理对象
26 try {
27 PackageInfo info = pm.getPackageInfo(getPackageName(), 0); //得到应用程序的包信息对象
28 return info.versionName; //取得应用程序的版本号
29 } catch (NameNotFoundException e) {
30 e.printStackTrace();
31 //此异常不会发生
32 return "";
33 }
34 }
35 }

项目Splash页面的开发与设计的更多相关文章
- 【手机安全卫士01】项目Splash页面的开发与设计
首先建立一个安卓的项目,然后修改manifest.xml文件,修改应用程序的logo和显示名称,效果图如下: 对应的代码如下: <?xml version="1.0" enc ...
- ThinkPHP6.0学习之项目安装页面的开发
在我们做一个项目的时候,如果是自己用或者是给同行用的话往往不需要做一个安装页面的,但是如果是将项目给一些不怎么会操作服务器,不怎么会程序的人用的时候,我们就需要一个安装页面来帮助他们更好的将项目安装好 ...
- 【vue】饿了么项目-页面骨架开发
1.页面骨架开发 1.1组件拆分 手机浏览器是把页面放在一个虚拟的“窗口”(viewport)中,通常这个虚拟的“窗口”(viewport)比屏幕宽,这样就不用把每个网页挤到很小的窗口中(这样会破坏没 ...
- [课程设计]Scrum 3.6 多鱼点餐系统开发进度(用户测试反馈页面构思&留言板设计)
Scrum 3.6 多鱼点餐系统开发进度(用户测试反馈页面构思&留言板设计) 1.团队名称:重案组 2.团队目标:长期经营,积累客户充分准备,伺机而行 3.团队口号:矢志不渝,追求完美 4.团 ...
- 企业门户(Portal)项目实施方略与开发指南
<企业门户(Portal)项目实施方略与开发指南> 基本信息 作者: 郑文平 丛书名: 企业大型应用集成丛书 出版社:电子工业出版社 ISBN:9787121211843 上架时间: ...
- H5类似易企秀/编辑器/页面制作/开发/生成工具/软件/源码/授权
代码地址如下:http://www.demodashi.com/demo/14960.html 项目简介 H5DS (HTML5 Design software) 这是一款基于WEB的 H5制作工具. ...
- 文献综述七:基于SSM的网上商城的开发与设计
一.基本信息 标题:基于SSM的网上商城的开发与设计 时间:2018 出版源:Computer Knowledge and Technology 文件分类:对框架的研究 二.研究背景 为了解决现在电商 ...
- 《工作笔记:移动web页面前端开发总结》
工作笔记:移动web页面前端开发总结 移动web在当今的发展速度是一日千里,作为移动领域的门外汉,在这段时间的接触后,发现前端开发这一块做一个小小的总结. 1.四大浏览器内核 1.Trident (I ...
- Java生鲜电商平台-App系统架构开发与设计
Java生鲜电商平台-App系统架构开发与设计 说明:阅读此文,你可以学习到以下的技术分享 1.Java生鲜电商平台-App架构设计经验谈:接口的设计2.Java生鲜电商平台-App架构设计经验谈:技 ...
随机推荐
- Studio-Class Diagram
UML Design Via Visual Studio-Class Diagram 用过几个建模设计工具,小的有staruml,大的有rational rose,EA.最后发现还是Visual St ...
- 访问Ice-Pick Lodge:假设公众筹款网站Kickstarter在成功
Xsolla非常高兴採訪了来自莫斯科的工作室 Ice-Pick Lodge的Golubeva.数天前,该公司已成功在Kickstarter上募集资金,创造出最知名的游戏"Pathologic ...
- 深入理解C指针之六:指针和结构体
原文:深入理解C指针之六:指针和结构体 C的结构体可以用来表示数据结构的元素,比如链表的节点,指针是把这些元素连接到一起的纽带. 结构体增强了数组等集合的实用性,每个结构体可以包含多个字段.如果不用结 ...
- linux内核源码目录(转)
Linux用来支持各种体系结构的源代码包含大约4500个C语言程序,存放在270个左右的子目录下,总共大约包含200万行代码,大概占用58MB磁盘空间. 源代码所有在目录:/usr/src/linux ...
- 怎样下载并编译Android4.0内核源代码goldfish(图文)
关于怎样下载Android4.0源代码,请查看我的博客内还有一篇文章(相同是图文教程): http://blog.csdn.net/flydream0/article/details/7036156 ...
- 高性能双端js模板
高性能双端js模板(新增filter)---simplite simplite是一款js实现的模板引擎,它能够完成浏览器端js模版和node服务器端js模板的数据渲染. 渲染性能十分突出. 支持浏览器 ...
- 根据Unix哲学来编写你的HTML5 Websocket服务器来实现全双工通信
websocketd代表WebSocket的守护进程 websocketd处理的是浏览器和服务器之间的WebSocket连接,它会启动你所指定的服务器端应用来对WebSockets进行处理,然后在浏览 ...
- expected number,sequence,or string.map evaluated instead of freemarker.template.smplehash
expected number,sequence,or string.map evaluated instead of freemarker.template.smplehash 使用freemark ...
- C#实现接口xml序列化与反序列化
C#实现接口xml序列化与反序列化 C#中接口无法被xml序列化,提示不支持.百度和bing也搜不到,只好自己动手写了 原理上肯定支持,.Net自己的xml序列化有一个IXmlSerializab ...
- Android 实现用户列表信息的功能,然后选择删除幻灯片删除功能
在项目开发过程中.经常须要对用户列表的信息进行删除的操作.Android中经常使用的删除操作方式有两种 .一种就是类似微信的滑动出现删除button方式,另一种是通过CheckBox进行选择.然后通过 ...