需求是一个手动图片滑动效果,但是图片不填充整个屏幕,同时滑动图片的时候,图片是从左右的最边上滑过来的。于是想到viewpger:将viewpager填充整个屏幕,但是将图片设置成想要的大小,这样效果就实现了。于是在代码中设置了viewpager的子元素imageview。

ImageView iv = new ImageView(this);
iv.setScaleType(ImageView.ScaleType.FIT_XY);
LinearLayout.LayoutParams iv_params = new LinearLayout.LayoutParams(1600, 800);

同时将iv添加到viewpager的图片集合中,运行后发现图片还是显示原始大小,根本不变化。

原因:imageview创建时没有指定父布局,因为控件参数的大小其实是父布局的。所以————

private LinearLayout buildImageView(int id) {
LinearLayout ll = new LinearLayout(GuideActivity.this);
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.WRAP_CONTENT,
LinearLayout.LayoutParams.WRAP_CONTENT);

ll.setLayoutParams(params);
ll.setGravity(Gravity.CENTER);
ImageView iv = new ImageView(this);
iv.setScaleType(ImageView.ScaleType.FIT_XY);
LinearLayout.LayoutParams iv_params = new LinearLayout.LayoutParams(1600, 800);
params.gravity = Gravity.CENTER_VERTICAL;
Log.i("width--height", "width = " + params.width + "---" + "height = " + params.height);
iv.setLayoutParams(iv_params);
iv.setImageResource(id);
ll.addView(iv);

return ll;
}

由于LinearLayout是viewgroup的子类,即是view的子类,所以添加到viewpager中是没有问题的。

-----------------------------------

运行后发现图片是按照正常设置大小来显示了。终于OK!

ps:还可以在xml中定义一个imageview,同样要有父布局,但是,在PagerAdapter的public Object instantiateItem(View container, int position) {}中,参数view要改成viewgroup,因为inflate方法加载布局的第二个参数是一个viewgroup啦。这种方式也同样有效。

送给遇到同样问题的小伙伴们。

ViewPager 中设置图片大小不起作用相关推荐

  1. plot.figue中设置图片的大小

    import matplotlib.pyplot as plt import matplotlib.pylab as pylab import numpy as npdef draw_bar(self ...

  2. 如何批量处理Word中的图片大小

    用宏批量定位word中图片位置     word文档里面有多幅图,但图片的缩进位置不统一,有些靠右,有些居中,有些靠左等等. 能否通过编制宏一次完成调整,让所有图片靠左,或居中. 通过宏可以批量完成一 ...

  3. word 批量设置图片大小

    word批量修改图片大小--固定长宽篇 方法一: 这部分要说的是把word中的所有图片修改成固定的并且相同的长和宽! 1.打开word,工具-宏-宏(或者直接按Alt+F8)进入宏的 界面,如下面所示 ...

  4. caffe ssd中输入图片大小对于内存使用和运行时间的影响

    caffe ssd中输入图片大小对于内存使用和运行时间的影响 一.内存使用 环境为caffe下以imagenet为样本集训练resnset网络.       在初始化生成lmdb的create_ima ...

  5. 在Word中调整图片大小会自动改变怎么办?

    在Word中调整图片大小会自动改变怎么办? 在Word中有多个图片,需要调整到大小一致,可是拉动.或者设置图片大小后,图片会自动改变,始终无法将所有图片调到大小一致. 别担心 鼠标右键点击图片 选择大 ...

  6. matplotlib折线图(设置图片大小和图片保存)

    代码示例: from matplotlib import pyplot as plt x = range(1,10) #x轴的位置 y = [6,7,12,12,15,17,15,20,18] #y轴 ...

  7. C# 操作word 指定书签位置插入图片并设置图片大小和位置

    object Nothing = System.Reflection.Missing.Value;         //创建一个名为wordApp的组件对象         Application w ...

  8. java 在线给word 文件插入图片,并设置图片大小

    一.前言: 有时我们想在一篇word文档中的指定位置添加一张服务器上的图片,并且并且设置图片大小.这个对文档的操作一定是需要第三方api的.市面上对文档处理的插件有POI以及openoffice等等, ...

  9. 视频直播源码,插入图片、删除图片、设置图片大小、提取图片

    视频直播源码,插入图片.删除图片.设置图片大小.提取图片 1.插入图片 Document对象有一个add_paragraph()方法插入图片,只需要传入路径或者字节流即可,实际上它也是调用段落的Run ...

最新文章

  1. jQuery ajax使用方法
  2. mysql 相邻记录时间差_sql 相邻2条记录时间差比较
  3. 【TensorFlow-windows】学习笔记六——变分自编码器
  4. 嵌入式-C语言面试题【转】
  5. 使用Gradle – 2019版从Travis可靠发布到Maven Central
  6. java程序流程控制_java程序流程控制
  7. 非空约束 mysql
  8. Spark API 之 cogroup 使用
  9. cAdvisor源码分析
  10. 建立数据地图,盘活数据资产!
  11. 算法开启栈转队列武魂
  12. 一文搞懂 Web Worker(原理到实践)
  13. wince槛外人窥探--存储布局
  14. 程序员学历不好是硬伤?苹果公司 50% 员工没大学学历
  15. 面向大数据异构系统的神威并行存储系统
  16. 创建线程的三种方式、线程运行原理、常见方法、线程状态
  17. 格式化数据恢复|u盘格式化恢复
  18. Java利用while求一等比数列_UPC-6760 Problem H九连环【重庆OI2018】等比数列求和JAVA高精度...
  19. 2020 CCPC 秦皇岛 K. Kingdom‘s Power(树形DP)
  20. 计算机维修员周记300字,计算机实习周记300字.doc

热门文章

  1. 蓝桥杯真题——青蛙跳杯子
  2. 可自管理的分布式工作流引擎的设计与实现
  3. Windows系统下,Ubuntu安装至移动硬盘(简单分析与详细安装教程)
  4. 滚轮事件和拖动滚动条事件
  5. 【路由交换01】什么是路由交换?
  6. DVD支持的视频格式
  7. DVD-RAM 格式化失败及视频文件分割软件
  8. iAno超级钢琴模拟器的软件使用教程
  9. python sqlalchemy oracle 中文_请教关于 flask-sqlalchemy 查询 oracle 库时, query.all()查询中编码的问题...
  10. vray3.6不会弹出服务器准许协议,SU2018装Vray3.6出现这个怎么解决啊