android日常 游戏:跳舞男孩
2016-04-05 21:39
537 查看
package com.mz.boy; import android.app.Activity; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.widget.ImageView; public class MainActivity extends Activity { private ImageView img; //定义一个线程对象 private Thread thread; //定义一个handler对象 private Handler handler; //定义一个线程运行的标志 private boolean isDancing=true; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); img=(ImageView)this.findViewById(R.id.img); //handler对象实例化的过程,处理消息 handler=new Handler(){ @Override public void handleMessage(Message msg) { // TODO Auto-generated method stub super.handleMessage(msg); switch (msg.what) { case 0: img.setBackgroundResource(R.drawable.boy0); break; case 1: img.setBackgroundResource(R.drawable.boy1); break; case 2: img.setBackgroundResource(R.drawable.boy2); break; case 3: img.setBackgroundResource(R.drawable.boy3); break; case 4: img.setBackgroundResource(R.drawable.boy4); break; case 5: img.setBackgroundResource(R.drawable.boy5); break; case 6: img.setBackgroundResource(R.drawable.boy6); break; case 7: img.setBackgroundResource(R.drawable.boy7); break; case 8: img.setBackgroundResource(R.drawable.boy8); break; case 9: img.setBackgroundResource(R.drawable.boy9); break; case 10: img.setBackgroundResource(R.drawable.boy10); break; case 11: img.setBackgroundResource(R.drawable.boy11); break; case 12: img.setBackgroundResource(R.drawable.boy12); break; case 13: img.setBackgroundResource(R.drawable.boy13); break; case 14: img.setBackgroundResource(R.drawable.boy14); break; case 15: img.setBackgroundResource(R.drawable.boy15); break; case 16: img.setBackgroundResource(R.drawable.boy16); break; case 17: img.setBackgroundResource(R.drawable.boy17); break; case 18: img.setBackgroundResource(R.drawable.boy18); break; default: break; } } }; thread=new MyThread(); thread.start(); } @Override protected void onDestroy() { // TODO Auto-generated method stub isDancing=false; super.onDestroy(); } //子线程的定义 class MyThread extends Thread{ @Override public void run() { // TODO Auto-generated method stub int what=1; while(isDancing){ handler.sendEmptyMessage((what++)%19); try { //每隔多长时间线程运行 thread.sleep(100); } catch (Exception e) { // TODO: handle exception e.printStackTrace(); } } } } }
以上是MainActivity中的代码
<?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:background="@drawable/bg" android:orientation="vertical" > <ImageView android:id="@+id/img" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" /> </LinearLayout>
以上为main.xml中代码
实现
相关文章推荐
- Error:Cause: org/gradle/api/publication/maven/internal/DefaultMavenFactory AndroidStudio
- Android Studio导入项目
- 通过Android源代码分析startActivity()过程(上)
- Android学习方法
- Android动态加载—Res文件
- Android编程获取sdcard音乐文件的方法
- 自定义 View 基础和原理
- Android--登录界面
- Android--通知之Notification
- Android 5 及之后版本rom解包
- Android中Intent传递对象的两种方法(Serializable,Parcelable)
- Android Fragment 真正的完全解析(上)
- android实体类的Parcelable
- 修改Android Studio的背景颜色
- ELF Hook原理
- Android总结篇系列:Android广播机制
- 今天修改包名时出现 java.lang.ClassNotFoundException: com.myandroid.qqlogin1.MainActivity错误
- Android开发——自动连接指定SSID的wifi热点(不加密/加密)
- 【Android自定义View】测量和绘制浅析
- Android中Looper讲解