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程序的更多相关文章

  1. android开发------第一个android程序

    好吧,现在我们就一起来写第一个android程序,看它带给了我们什么.sdk的使用和虚拟机的创建我就不说了.项目创建过程先略过,不太重要. 那第一个程序我们能学到什么知识呢?一起看吧.^-^ 在IDE ...

  2. Android学习笔记一之第一个Android程序

    /** *Title:总结昨天下午至今天上午的学习成果 *Author:zsg *Date:2017-8-13 / 一.了解Android 1.Android架构 Android大致可分为四层架构:L ...

  3. Android逆向 编写一个Android程序

    本节使用的Android Studio版本是3.0.1 首先,我们先编写一个apk,后面用这个apk来进行逆向.用Android Studio创建一个新的Android项目,命名为Jhm,一路Next ...

  4. delphi 10 Seattle 第一个Android程序

    delphi 10 Seattle 第一个Android程序 1.打开Delphi RAD Studio Seattle,如下图     2.选择black application 点击OK   3. ...

  5. 【Android实验】第一个Android程序与Activity生命周期

    目录 第一个Android程序和Activity生命周期 实验目的 实验要求 实验过程 1. 程序正常启动与关闭 2. 外来电话接入的情况 3. 外来短信接入的情况 4. 程序运行中切换到其他程序(比 ...

  6. 用代码如何检测一个android程序是否在运行

    /** * 检测一个android程序是否在运行 * @param context * @param PackageName * @return */ public static boolean is ...

  7. Android开发学习之三——第一个Android程序

    下面我们建立第一个Android程序. 打开Eclipse,开始如下步骤: 1.File ==> New ==> Android Application Project 出现如下窗口: 2 ...

  8. 分析你的第一个Android程序

    目录 分析你的第一个Android程序 Android模式的项目结构 切换项目结构模式 Project模式的项目结构 .gradle和idea app build(没有发现这个文件夹) gradle ...

  9. java Android SDK安装与环境变量配置以及开发第一个Android程序

    JAVA的安装与环境变量的配置 1.先下载JAVA,并且安装. 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk-7u3 ...

  10. 第一行代码阅读笔记---详解分析第一个Android程序

    以下是我根据作者的思路,创建的第一个Android应用程序,由于工具强大,代码都自动生成了,如下: package com.example.first_app; import android.os.B ...

随机推荐

  1. copy file to docker、

    Docker是个Linux Container管理软件. 今天我们来讲解一下从主机复制文件到Docker的几种方法. 在分享之前, 我们看看Docker社区对这个问题的需求是有多么强(ju)烈(jin ...

  2. composer--------------今天遇到几个奇葩问题,记录一下

    1.就是composer跟xdebug有冲突,每次用composer命令的时候都要报xdebug的错误,其实这个只要你去php的配置文件里面将xdebug注释掉就可以了,但是我注释掉了以后还是不行.找 ...

  3. input内强制保留小数点后两位 位数不足时自动补0

    input内强制保留小数点后两位 位数不足时自动补0 小数点后位数超出2位时进行四舍五入 需引入jquery包 1.11.2版本 1 function xiaoshu(x) 2 { 3 var f = ...

  4. AJAX-----16HTML5实现大文件切割上传

    2点多接了个电话导致失眠,没办法,跑起来接着板砖了...... 废话不多说,直接走码... <!DOCTYPE html> <html lang="en"> ...

  5. 10. 星际争霸之php设计模式--原型模式

    题记==============================================================================本php设计模式专辑来源于博客(jymo ...

  6. Linq To Sqlite 一一二二

    说在前头 之所以写下这些文字,主要是因为使用LINQ的同志们都觉它的美好(至于有多美好,各位心里知道,我就不在描述了,如果你是你还不了解LINQ,园子里有大把的文章),微软老哥只提供了自家的SQLSe ...

  7. 自定义AlertView实现模态对话框

    在Windows应用程序中,经常使用模态(Model)对话框来和用户进行简单的交互,比如登录框.在IOS应用程序中,有时我们也希望做同样的事情.但IOS的UI库中,没有模态对话框,最接近那个样子的应该 ...

  8. HDU 5690:2016"百度之星" - 初赛 All X

    原文链接:https://www.dreamwings.cn/hdu5690/2657.html All X Time Limit: 2000/1000 MS (Java/Others)    Mem ...

  9. HTML5新增元素、标签总结

    总是遇到h5新标签的笔试题目,就查阅了资料来总结一下: 1.form相关: (1)form属性:在HTML5中表单元素可放在表单之外,通过给该元素添加form属性来指向目标表单(form属性值设为目标 ...

  10. Mac OS下pip安装 pillow

    sudo pip install pil报错如下:/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Develo ...