尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

Android开发学习笔记——9、图像显示

Android开发学习笔记——9、图像显示
📅 发布时间:2026/7/27 9:56:00

ImageView & ImageButton

一、基础控件区分

1. ImageView

作用:专门展示图片,默认只是图像展示,无交互样式。

<ImageView android:id="@+id/iv_test" android:layout_width="100dp" android:layout_height="100dp" android:src="@drawable/ic_icon" <!-- 设置图片资源 --> android:scaleType="centerCrop"/>

2. ImageButton

继承ImageView,图片型按钮,ImageButton 具有按钮交互语义,默认样式通常包含背景或按压反馈,但具体效果取决于应用主题。

<ImageButton android:id="@+id/ibtn_test" android:layout_width="100dp" android:layout_height="100dp" android:src="@drawable/ic_icon"/>

二、核心属性

  1. android:src:设置图片资源(推荐)
  2. android:background:设置背景

    ⚠️区别: src:图片本身,会受scaleType缩放控制; background:底层背景,不受scaleType影响。

  3. scaleType图片缩放模式(高频)
  • fitXY:拉伸填满控件,比例会失真
  • centerCrop:等比缩放,铺满控件,超出部分裁剪(最常用)
  • centerInside:完整显示图片,不裁剪,不拉伸

三、ImageView 和 ImageButton 核心区别

  1. ImageView:纯图片展示,无默认点击波纹;可以设置点击事件,但没有按压视觉效果。
  2. ImageButton:图像按钮,自带默认背景按压效果,用于交互。

开发小技巧: 如果想要一张图片充当按钮,不想要默认按钮底色:优先用ImageView + setOnClickListener,而不是ImageButton。

四、需求:图像+文字一起显示

方案1:Button搭配drawable

普通Button,文字上下/左右附带图片,无需嵌套布局

<Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="相册" android:drawableStart="@drawable/ic_photo" <!-- 左侧图片 --> android:drawablePadding="6dp"/> <!-- 图文间距 -->

可用属性:drawableTop/drawableBottom/drawableRight

方案2:布局嵌套(自由排版)

ConstraintLayout/LinearLayout 包裹 ImageView + TextView

<LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical"> <ImageView android:layout_width="60dp" android:layout_height="60dp" android:src="@mipmap/ic_icon"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="图片下方文字"/> </LinearLayout>

五、选型速记

  1. 只显示图片 →ImageView
  2. 图片充当按钮、需要按压效果 → ImageButton 或 ImageView绑定点击事件
  3. 图片+文字按钮→ 优先使用Button的drawable属性(代码最少)

⚠️常见坑

  1. ImageButton默认有灰色背景,想要透明需要设置android:background="@null"
  2. src和background不要混用混淆;缩放属性scaleType只作用于src
  3. 大图直接加载容易OOM,项目中建议使用Glide等图片框架

需要我把图文按钮那一段,给你一份可直接复制的完整运行xml示例吗?

相关新闻

  • 智能体工程:机器自主决策的核心架构与实践
  • TVA-World架构在工业质检领域的革命性突破(9)
  • 【AI大模型进阶】Pipeline 的使用:原来调用模型可以简单到令人发指

最新新闻

  • 杭州上门黄金回收靠谱商家有哪些?2026全城走访盘点,避开偷克重隐形套路 - 资讯洞察员
  • Go语言控制语句最佳实践与常见陷阱
  • 2026保山厨房渗水到楼下怎么办?自来水管暗管检测方法,仪器测漏收费标准 - 宅安选房屋修缮
  • 深入解析SM320F28335-HT:高温工业级DSC的架构、外设与电机控制实战
  • C# Socket TCP客户端编程实战:异步通信、粘包处理与工业级实现
  • 北京靠谱离婚律师推荐:如何挑选专办财产分割与抚养权纠纷的知名婚姻律所及注意事项 - 商讯

日新闻

  • OpenClaw开源智能体网关:AI助手与即时通讯的完美融合
  • 写一个简单的sh脚本
  • 2026年 西安缝隙天线厂家:5G通信与车载天线专业定制供应商深度分析 - 卓企推荐

周新闻

  • 大连理工大学与东京大学联手打造的“主动型AI助手“
  • 170.2026年国家级科研瓶颈:超精密单点金刚石切削(SPDT)光学表面生成
  • SongBloom:革命性歌曲生成框架深度解析——如何通过交织自回归与扩散模型创作完整音乐

月新闻

  • 2026年6月公司网站搭建最新热门渠道测评:四大低成本/零代码平台对比+避坑
  • 【Linux】Linux arm 编译QT程序,出现expected “}“报错
  • 【MATLAB例程】四基站二维AOA定位与距离辅助增强对比仿真。基于角度观测和测距修正的固定目标平面定位精度分析

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号