第一个Android程序
MainActivity.java
package com.example.crystalball; import android.support.v4.app.Fragment;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.content.Intent;
import android.media.AudioManager;
import android.media.SoundPool;
import android.os.Bundle;
import android.util.Log;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast; public class MainActivity extends Activity { private static final String Tag = "MainActivity"; Button mButton;
TextView mTextView;
ImageView mImageView;
Animation mAnimation;
Animation mFadein;
SoundPool mSoundPool;
int click; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.fragment_main); Log.v(Tag, "onCreate()"); mButton = (Button) findViewById(R.id.button1);
mTextView = (TextView) findViewById(R.id.textView1);
mImageView = (ImageView) findViewById(R.id.imageView1);
mAnimation = AnimationUtils.loadAnimation(this, R.anim.zoomin);
mFadein = AnimationUtils.loadAnimation(this, R.anim.fadein);
mSoundPool = new SoundPool(1, AudioManager.STREAM_MUSIC, 0);
click = mSoundPool.load(this, R.raw.click, 1); mButton.setOnClickListener(new View.OnClickListener() { @Override
public void onClick(View v) {
// TODO Auto-generated method stub
String answer = "Hello World";
mTextView.setText(answer);
mTextView.startAnimation(mFadein);
mImageView.startAnimation(mAnimation); playSound();
toast("跳转成功");
startAnotherActivity();
}
}); } //通过intent跳转到另一个activity
private void startAnotherActivity() {
Intent intent = new Intent(this, SecondActivity.class);
startActivity(intent);
} private void showDialog() {
AlertDialog.Builder mBuilder = new AlertDialog.Builder(this);
mBuilder.setTitle("提示");
mBuilder.setMessage("确认关闭?");
mBuilder.setPositiveButton("确认", new OnClickListener() { @Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
dialog.dismiss();
MainActivity.this.finish();
}
}); mBuilder.setNegativeButton("取消", new OnClickListener() { @Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
dialog.dismiss();
}
}); mBuilder.create().show();
} @Override
protected void onStart() {
// TODO Auto-generated method stub
super.onStart();
Log.v(Tag, "onStart()");
} @Override
protected void onRestart() {
// TODO Auto-generated method stub
super.onRestart();
Log.v(Tag, "onRestart()");
} @Override
protected void onResume() {
// TODO Auto-generated method stub
super.onResume();
Log.v(Tag, "onResume()");
} @Override
protected void onPause() {
// TODO Auto-generated method stub
super.onPause();
Log.v(Tag, "onPause()");
} @Override
protected void onStop() {
// TODO Auto-generated method stub
super.onStop();
Log.v(Tag, "onStop()");
} @Override
protected void onDestroy() {
// TODO Auto-generated method stub
super.onDestroy();
Log.v(Tag, "onDestroy()");
} //按下退出键时
@Override
public void onBackPressed() {
showDialog();
} //播放声音
private void playSound() { mSoundPool.play(click, 1, 1, 0, 0, 1);
} //toast提示
private void toast(String content) {
Toast mToast = Toast.makeText(this, content, Toast.LENGTH_SHORT);
mToast.setGravity(Gravity.CENTER, 0, 0);
mToast.show(); }
@Override
public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
} @Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
} /**
* A placeholder fragment containing a simple view.
*/
public static class PlaceholderFragment extends Fragment { public PlaceholderFragment() {
} @Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_main, container,
false);
return rootView;
}
} }
fadein.xml
<?xml version="1.0" encoding="utf-8"?>
<!-- alpha: 渐变透明度动画效果 -->
<alpha
android:fromAlpha="0"
android:toAlpha="1"
android:duration="2000"
xmlns:android="http://schemas.android.com/apk/res/android"> </alpha>
zoomin.xml
<?xml version="1.0" encoding="utf-8"?>
<!-- scale: 渐变尺寸伸缩动画效果 -->
<scale
android:fromXScale="0"
android:toXScale="1"
android:fromYScale="0"
android:toYScale="1"
android:pivotX="50%"
android:pivotY="50%"
android:duration="1000"
xmlns:android="http://schemas.android.com/apk/res/android"> </scale>
第一个Android程序的更多相关文章
- android开发------第一个android程序
好吧,现在我们就一起来写第一个android程序,看它带给了我们什么.sdk的使用和虚拟机的创建我就不说了.项目创建过程先略过,不太重要. 那第一个程序我们能学到什么知识呢?一起看吧.^-^ 在IDE ...
- Android学习笔记一之第一个Android程序
/** *Title:总结昨天下午至今天上午的学习成果 *Author:zsg *Date:2017-8-13 / 一.了解Android 1.Android架构 Android大致可分为四层架构:L ...
- Android逆向 编写一个Android程序
本节使用的Android Studio版本是3.0.1 首先,我们先编写一个apk,后面用这个apk来进行逆向.用Android Studio创建一个新的Android项目,命名为Jhm,一路Next ...
- delphi 10 Seattle 第一个Android程序
delphi 10 Seattle 第一个Android程序 1.打开Delphi RAD Studio Seattle,如下图 2.选择black application 点击OK 3. ...
- 【Android实验】第一个Android程序与Activity生命周期
目录 第一个Android程序和Activity生命周期 实验目的 实验要求 实验过程 1. 程序正常启动与关闭 2. 外来电话接入的情况 3. 外来短信接入的情况 4. 程序运行中切换到其他程序(比 ...
- 用代码如何检测一个android程序是否在运行
/** * 检测一个android程序是否在运行 * @param context * @param PackageName * @return */ public static boolean is ...
- Android开发学习之三——第一个Android程序
下面我们建立第一个Android程序. 打开Eclipse,开始如下步骤: 1.File ==> New ==> Android Application Project 出现如下窗口: 2 ...
- 分析你的第一个Android程序
目录 分析你的第一个Android程序 Android模式的项目结构 切换项目结构模式 Project模式的项目结构 .gradle和idea app build(没有发现这个文件夹) gradle ...
- java Android SDK安装与环境变量配置以及开发第一个Android程序
JAVA的安装与环境变量的配置 1.先下载JAVA,并且安装. 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk-7u3 ...
- 第一行代码阅读笔记---详解分析第一个Android程序
以下是我根据作者的思路,创建的第一个Android应用程序,由于工具强大,代码都自动生成了,如下: package com.example.first_app; import android.os.B ...
随机推荐
- AJAX-----01远古时期的ajax
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- CSS3 border-image详解、应用
一.border-image的兼容性 border-image可以说是CSS3中的一员大将,将来一定会大放光彩,其应用潜力真的是非常的惊人.可惜目前支持的浏览器有限,仅Firefox3.5,chrom ...
- 小梅哥FPGA数字逻辑设计教程——基于线性序列机的TLC5620型DAC驱动设计
基于线性序列机的TLC5620型DAC驱动设计 目录 TLC5620型DAC芯片概述: 2 TLC5620型DAC芯片引脚说明: 2 TLC5620型DAC芯片详细介绍: 3 TLC ...
- 初识python第二天(2)
整理Python常见数据类型内置函数的使用方法如下: 一.int 首先我们来查看一下int包含了哪些函数 #python3.x print(dir(int)) #['__abs__', '__add_ ...
- HTML5 aria- and role
HTML5 aria-* and role 在video-js的demo中看到了很多aria-*,不知道干嘛的.google一下,发现aria的意思是Accessible Rich Internet ...
- 字典的循环和if语句
字典是键-值(key-value)存储,循环的时候也是以键为对象 d = {'Michael': 95, 'Tracy': 85,'Bob': 75} for x in d : print x 输出结 ...
- HashCode
如果一个类的对象要用做hashMap的key,那么一定要注意覆盖该类的equals和hashCode方法. equals()是基类Object的方法,用于判断对象是否有相同地址及是否为同一对象 pub ...
- stoneniqiu 理想就是自己喜欢做,并对社会和他人都有意义的事情!
H5嵌入原生开发小结----兼容安卓与ios的填坑之路 2016-11-19 08:29 by stoneniqiu, 1038 阅读, 8 评论, 收藏, 编辑 一开始听说开发H5,以为就是做适配现 ...
- javascript 字符转换为ascii码,ascii码转换为字符
<script> str="A"; code = str.charCodeAt(); str2 = String.fromCharCode(code); str3 = ...
- 3. Swift 数组|字典|集合
在OC中数组,字典,集合有自己的表示方法,分别是Array,Dictionary,Set 与 String 都属于数值类型变量,他们都属于结构体. 使用简介灵活多变,个人感觉可读性变差了很多,用起来由 ...