
使用简单图片

使用Drawable对象

bitmap和BitmapDrawable对象



package peng.liu.test
import android.app.Activity
import android.content.res.AssetFileDescriptor
import android.content.res.AssetManager
import android.graphics.BitmapFactory
import android.graphics.drawable.BitmapDrawable
import android.graphics.drawable.ClipDrawable
import android.media.MediaPlayer
import android.os.Bundle
import android.os.Handler
import android.os.Message
import android.view.View
import android.view.animation.Animation
import android.view.animation.AnimationUtils
import android.widget.ImageView
import java.io.InputStream
import java.util.Timer
import java.util.TimerTask
public class MainActivity extends Activity{
String[] images
ImageView image
int currentImg
AssetManager asset
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
image = (ImageView) findViewById(R.id.imageBit)
try{
asset = getAssets()
images = asset.list("")
}catch (Exception e){
e.printStackTrace()
}
findViewById(R.id.btnBit).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (currentImg >= images.length){
currentImg = 0
}
while (!images[currentImg].endsWith(".png")&&!images[currentImg].endsWith(".jpg")&&!images[currentImg].endsWith(".gif")){
currentImg++
if (currentImg >= images.length){
currentImg = 0
}
InputStream assetFile = null
try{
assetFile = asset.open(images[currentImg++])
}catch (Exception e){
e.printStackTrace()
}
BitmapDrawable drawable = (BitmapDrawable) image.getDrawable()
if (drawable != null && !drawable.getBitmap().isRecycled()){
drawable.getBitmap().recycle()
}
image.setImageBitmap(BitmapFactory.decodeStream(assetFile))
}
}
})
}
}