文章结束给大家来个程序员笑话:[M]

刚刚看了一下一个帧布局的简略Android示例,纠结了半天不知道如何将图片加到resource中的drawable中去。
比如在一个TestDemo的Res/drawable文件夹中,新添加一张图片资源要如何添加。

我直接将图片复制到bin\res\drawable-hdpi或者bin\res\drawable-mdpi中去,然后在eclipse中刷新图片仍然不表现。

上网找到了关于加载图片资源的问题解决办法:

直接拷贝须要添加的图片资源,然后在Res/drawable文件夹 右键点击 选择“粘贴”即可把图片拷贝进去。

上面是一个简略的帧布局Android应用实例,实现一只小鸟飞行的动画效果,参考了《谎话企业级Android应用开发实战》15.2.5帧布局(FrameLayout) P110-113页。代码如下:

package com.ccf.birdframe;import android.os.Bundle;import android.os.Handler;import android.os.Message;import android.app.Activity;import android.graphics.drawable.Drawable;import android.view.Menu;import android.view.View;import android.widget.FrameLayout;public class BirdActivity extends Activity {FrameLayout frame = null;private boolean  flag = true;//由该类两个方法间的循环调用,实现界面不断更新class MyHandler extends Handler{int i = 0;public void handleMessage(Message msg) {i++;//总共7幅图,顺次表现show(i % 7);//调用sleep函数sleep(50);}public void sleep(long delayMillis) {//判断是不是继续飞行if(flag) {//实质上是调用了一次handleMessagesendMessageDelayed(obtainMessage(0), delayMillis);}}}//该方法是被调用以更新帧布局的前景图片void show(int j) {//获取七张图片Drawable mybird1 = getResources().getDrawable(R.drawable.mybird1);Drawable mybird2 = getResources().getDrawable(R.drawable.mybird2);Drawable mybird3 = getResources().getDrawable(R.drawable.mybird3);Drawable mybird4 = getResources().getDrawable(R.drawable.mybird4);Drawable mybird5 = getResources().getDrawable(R.drawable.mybird5);Drawable mybird6 = getResources().getDrawable(R.drawable.mybird6);Drawable mybird7 = getResources().getDrawable(R.drawable.mybird7);//不同的情况,设置不同的前景switch(j) {     case 0:      frame.setForeground(mybird1);      break;     case 1:     frame.setForeground(mybird2);     break;     case 2:     frame.setForeground(mybird3);     break;     case 3:     frame.setForeground(mybird4);     break;     case 4:     frame.setForeground(mybird5);     break;     case 5:     frame.setForeground(mybird6);     break;     case 6:     frame.setForeground(mybird7);     break;}}@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_bird);frame = (FrameLayout)findViewById(R.id.frame);//创建一个Handler子类对象,要调用其方法final MyHandler myHandler = new MyHandler();myHandler.sleep(50);//为frame设置单击事件,当其被击中时,在飞行于暂停之间切换frame.setOnClickListener(new View.OnClickListener()  {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubflag = !flag;myHandler.sleep(50);}});}}
每日一道理
这浓浓的母爱使我深深地认识到:即使你是一只矫健的雄鹰,也永远飞不出母爱的长空;即使你是一条扬帆行驶的快船,也永远驶不出母爱的长河!在人生的路上不管我们已走过多远,还要走多远,我们都要经过母亲精心营造的那座桥!

七张图片如下:


mybird1 mybird2 mybird3 mybird4

mybird5mybird6 mybird7

文章结束给大家分享下程序员的一些笑话语录:  一边用着越狱的ip,一边拜乔帮主的果粉自以为是果粉,其实在乔帮主的眼里是不折不扣的叛徒。

更多相关文章

  1. Android(安卓)Bitmap处理
  2. Android(安卓)2048游戏设计
  3. Android--布局方式(RelativeLayout)学习
  4. Android使用Intent一键分享图片文字到腾讯、新浪、开心、微信等
  5. Android实现多线程下载图片的方法
  6. Android(安卓)AlertDialog的一切
  7. Android中自定义Adapter
  8. Android(安卓)布局优化
  9. Android(安卓)通过selector改变状态

随机推荐

  1. Android(安卓)ListView的item点击无响应
  2. Android: R cannot be resolved to a var
  3. Manifest中Activity的一些配置
  4. Android培训班(46)
  5. Android(安卓)WebView调用Js设置byte[]给
  6. 要导入android工程灰显的问题
  7. WebView 键盘遮挡输入框解决方案
  8. Android实现在webview中长按图片弹出菜单
  9. Android(安卓)Fragment 使用
  10. Android中关于startActivityForResult()