assets文件下资源的访问
2016-03-04 11:51
369 查看
public class MainActivity extends Activity { private Button btn_next; private ImageView iv_picture; private AssetManager assets=null; private String[] image=null; private int currentImageId=0; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); init(); } private void init() { iv_picture = (ImageView) findViewById(R.id.iv_picture); try { //获取assets下的所有文件 assets = getAssets(); image=assets.list(""); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } btn_next = (Button) findViewById(R.id.btn_next); btn_next.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub //处理越界问题 if(currentImageId>=image.length){ currentImageId=0; } //判断是否是图片文件 while(!image[currentImageId].endsWith(".png") &&!image[currentImageId].endsWith(".jpg") &&!image[currentImageId].endsWith(".gif")){ currentImageId++; if(currentImageId>=image.length){ currentImageId=0; } } //输入流 InputStream assetFile=null; try { assetFile=assets.open(image[currentImageId++]); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } //获取图片对象 BitmapDrawable bitmapDrawable=(BitmapDrawable) iv_picture.getDrawable(); //判断是否为空并且是否回收 if(bitmapDrawable!=null&&!bitmapDrawable.getBitmap().isRecycled()){ bitmapDrawable.getBitmap().recycle(); } //设置下一张图片 iv_picture.setImageBitmap(BitmapFactory.decodeStream(assetFile)); } }); }
相关文章推荐
- Rating Prediction——评分预测小结
- Servlet运行路径问题的解决
- dotnetperls
- Spring Boot 中文参考指南
- json与jsonp
- C++获取字符cin,getchar,get,getline的区别
- idea intellij
- zepto与jquery冲突的解决
- Spark MLlib FPGrowth算法
- RES相关,Android支付相关记录
- 浅谈正则表达式
- android adb 连接手机出问题
- 最有效教程 eclipse下启动tomcat 访问http://localhost:8080时的404错误
- 【bzoj】2244: [SDOI2011]拦截导弹【cdq分治】
- 我在MDCC 2015的演讲PPT《HTML5移动应用多端开发架构实践》分享
- MYSQL查询表结构
- js中递归函数的使用
- PostgreSQL学习手册(SQL语言函数)
- 分隔字符串的匹配
- Java HashMap的工作原理