背景图的滚动?public class main extends Activity {
AnimationDrawable animationDrawable; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ImageView iv = (ImageView) findViewById(R.id.imageView1);
iv.setBackgroundResource(R.anim.myaction);
animationDrawable = (AnimationDrawable) iv.getBackground();
} @Override
public boolean onTouchEvent(MotionEvent event) { if (event.getAction() == MotionEvent.ACTION_DOWN) {
animationDrawable.start();
return true;
}
return super.onTouchEvent(event);
}
//@Override
public void onAttachedToWindow() {
this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);
super.onAttachedToWindow();
}
}
AnimationDrawable animationDrawable; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ImageView iv = (ImageView) findViewById(R.id.imageView1);
iv.setBackgroundResource(R.anim.myaction);
animationDrawable = (AnimationDrawable) iv.getBackground();
} @Override
public boolean onTouchEvent(MotionEvent event) { if (event.getAction() == MotionEvent.ACTION_DOWN) {
animationDrawable.start();
return true;
}
return super.onTouchEvent(event);
}
//@Override
public void onAttachedToWindow() {
this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);
super.onAttachedToWindow();
}
}
解决方案 »
- java socket问题 急!
- 已经有一个在顶部的Actionbar,怎样动态添加一个下面的actionbar?
- 键盘锁reenableKeyguard问题
- 怎么判断手机屏幕是横屏的,还是竖屏的?全键盘手机大都是横屏的
- ListView 能实现动态列吗? 在线求解!!!!!!!!!!
- android 如何listview显示图片文件的缩略图?
- 关于PendingIntent 的页面跳转问题??
- android 访问webservice 报错
- 求android4.0系统以上的VPN开发代码??
- 大佬们 这是怎么回事?一个错误,帮我看下 谢谢
- android中关于SQLite数据库的问题
- 请问如何在onTouch里实现onClick的功能
<animation-list xmlns:android="http://schemas.android.com/apk/res/android"
android:oneshot="false"><!-- true 表示播放完毕停止 false 无限循环播放 -->
<item android:drawable="@drawable/btn_style_alert_dialog_button_e" android:duration="500"/>
<item android:drawable="@drawable/btn_style_alert_dialog_button_normal" android:duration="500"/>
<item android:drawable="@drawable/btn_style_alert_dialog_button_pressed" android:duration="500"/>
</animation-list>
public class PlayActivity extends Activity
{
Bitmap bitmap;
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
接下去 写咯bitmap = BitmapFactory.decodeResource(PlayActivity.this.getResources(), R.drawable.gamebackground); // 获取背景
SurfaceView surfaceView = (SurfaceView) findViewById(R.id.gamesurface); //创建surfaceView
holder = surfaceView.getHolder(); //SurfaceHolder The holder of the surface.
holder.addCallback(new SurfaceHolder.Callback() //holder的回调函数
{
public void surfaceDestroyed(SurfaceHolder holder) //在surfaceview摧毁时调用
{
task.cancel();
} public void surfaceCreated(SurfaceHolder holder) //在surfaceview被创建时调用
{
timer.schedule(task, 0, 50);
} public void surfaceChanged(SurfaceHolder holder, int format, int width, int height)//在surfaceview发生改变时调用
{
}
}); task = new TimerTask() //定时器
{
@Override
public void run()
{
Canvas canvas = holder.lockCanvas(); // 锁定画布
CreatBackGround(canvas); // 创建 背景
holder.unlockCanvasAndPost(canvas);//画布解锁 }
}; }
public void CreatBackGround(Canvas canvas)
{
if (bitmap.isRecycled())
{
bitmap.recycle(); //回收图片所占的内存
}
bitmapback = Bitmap.createBitmap(bitmap, 0, locationY, screenWith, screenHigh);// 创建缓冲区
locationY -= 1;// 背景移动
if (locationY <= 0) // 背景截图长度小于屏幕长度时 重置
{
locationY = imagehigh - screenHigh;
}
canvas.drawBitmap(bitmapback, 0, 0, null);// 将截屏绘制至画布
}
}