You need to enable JavaScript to run this app.
最新活动
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

安卓ImageView两个宽度

安卓ImageView控件只能设置一个宽度,但可以通过以下几种方式实现两个宽度的效果:

  1. 使用FrameLayout布局:在FrameLayout中添加两个ImageView,分别设置不同的宽度,然后使用android:layout_gravity属性将它们居中显示。
<FrameLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <ImageView
        android:layout_width="200dp"
        android:layout_height="wrap_content"
        android:src="@drawable/image1"
        android:layout_gravity="center"/>

    <ImageView
        android:layout_width="100dp"
        android:layout_height="wrap_content"
        android:src="@drawable/image2"
        android:layout_gravity="center"/>

</FrameLayout>
  1. 使用ConstraintLayout布局:在ConstraintLayout中添加两个ImageView,分别设置不同的宽度,并使用约束条件将它们居中显示。
<androidx.constraintlayout.widget.ConstraintLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <ImageView
        android:id="@+id/image1"
        android:layout_width="200dp"
        android:layout_height="wrap_content"
        android:src="@drawable/image1"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintBottom_toBottomOf="parent"/>

    <ImageView
        android:id="@+id/image2"
        android:layout_width="100dp"
        android:layout_height="wrap_content"
        android:src="@drawable/image2"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintBottom_toBottomOf="parent"/>

</androidx.constraintlayout.widget.ConstraintLayout>
  1. 自定义ImageView控件:继承ImageView类,重写onMeasure方法,在方法中根据需要设置两个不同的宽度。
public class CustomImageView extends ImageView {
    private int width1;
    private int width2;

    public CustomImageView(Context context) {
        super(context);
    }

    public CustomImageView(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    public CustomImageView(Context context, AttributeSet attrs, int defStyle) {
        super(context, attrs, defStyle);
    }

    public void setWidth1(int width1) {
        this.width1 = width1;
        requestLayout();
    }

    public void setWidth2(int width2) {
        this.width2 = width2;
        requestLayout();
    }

    @Override
    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
        int widthSize = MeasureSpec.getSize(widthMeasureSpec);
        int widthMode = MeasureSpec.getMode(widthMeasureSpec);

        int width;
        if (widthMode == MeasureSpec.EXACTLY) {
            width = widthSize;
        } else {
            width = Math.min(width1, width2);
            if (widthMode == MeasureSpec.AT_MOST) {
                width = Math.min(width, widthSize);
            }
        }

        setMeasuredDimension(width, heightMeasureSpec);
    }
}

然后在布局文件中使用自定义的ImageView控件。

<com.example.myapplication.CustomImageView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:src="@drawable/image1"
    app:width1="200dp"
    app:width2="100dp"/>

以上是三种实现安卓ImageView两个宽度的方法,选择其中一种适合你的需求进行使用。

本文内容通过AI工具匹配关键字智能整合而成,仅供参考,火山引擎不对内容的真实、准确或完整作任何形式的承诺。如有任何问题或意见,您可以通过联系service@volcengine.com进行反馈,火山引擎收到您的反馈后将及时答复和处理。
展开更多
面向开发者的云福利中心,ECS 60元/年,域名1元起,助力开发者快速在云上构建可靠应用

社区干货

MAD,现代安卓开发技术:Android 领域开发方式的重大变革|社区征文

有的时候 Google 会将其翻译成`现代安卓开发`,有的时候又翻译成`新式安卓开发`,个人觉得前者的翻译虽然激进、倒也贴切。下面按照 MAD 的构成要点逐步展开,帮助大家快速了解 MAD 的技术理念。如果大家对其中的语言... 框架等多个层面提供卓越的开发体验,其愿景和优势:* 倾力打造:汇聚 Google 在 Android 行业十余年的前言开发经验* 入门简单:提供大量 Demo 和详尽文档,适用于各阶段各规模的项目* 迅速起步:提供显著降低样板代码...

展望 2022 :Android 开发技术动向 | 社区征文

例如当屏幕宽度大于 600dp 时将默认显示两列内容、引入了类似 Chrome OS 的 Dock 栏等,同时支持拖拽分屏等功能,同时在不同窗口中启动多个应用![image.png](https://p9-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/712c61c4175c4ad08973a5e170091510~tplv-k3u1fbpfcp-5.jpeg?)## WindowManager为应对更多种类屏幕的出现,Jetpack 提供了 WindowManager 库,便于 App 更好地适配不同屏幕的尺寸。多窗口模式下的 App 不能再依赖 `...

从重构到扩展——跨端通讯SDK

> 在移动端App开发中,由于H5 Web页面具有原生应用不具备的多平台复用、热更新等诸多便利特性,我们往往会将一部分对性能体验要求不是特别高的页面采用H5 Web完成,然后App基于WebView作为容器承载页面,而跨端通讯就是... [picture.image](https://p3-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/4e30e2245a754c019d64da5d9597bc7c~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d&x-expires=1716308447&x-signature=Juny06d8j...

关于移动端适配你了解多少? | 社区征文

## 背景介绍> 我们公司的APP是通过安卓写的壳子,里面嵌套了前端开发的Vue页面或者H5页面。H5或Vue再去调用android或者IOS原生写的的方法。之前我接手的部分业务,为保证功能完整性,入口也需要使用H5实现,当时遇到了... ##### **ideal viewport:理想视口**理想视口,即`页面绘制区域可以完美适配设备宽度的视口大小`,不需要出现滚动条即可正常查看网站的所有内容,且文字图片清晰。这也是我们为什么需要使用viewport的原因。![kkk...

特惠活动

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

域名注册服务

cn/top/com等热门域名,首年低至1元,邮箱建站必选
1.00/首年起32.00/首年起
立即购买

DCDN国内流量包100G

同时抵扣CDN与DCDN两种流量消耗,加速分发更实惠
2.00/20.00/年
立即购买

安卓ImageView两个宽度-优选内容

客户端 SDK
在支持渲染 View 对象的基础上,新增支持渲染 Surface 对象。 在 Android 平台,支持动态加载主库 libvolcenginertc.so,集成指南参看按需集成插件。 功能优化在 Android 系统上,加入房间,使用手机音量键调节的音量... SetDummyCaptureImagePath 跨房间转发媒体流,适用于跨房间连麦等场景。 StartForwardStreamToRooms StopForwardStreamToRooms UpdateForwardStreamToRooms PauseForwardStreamToAllRooms ResumeForwardStreamToAl...
功能接入
会一边下载一边播放已经下载好的帧[imageView bd_setImageWithURL:url options:BDImageAnimatedImageProgressiveDownload];//只针对静图(jpeg,png)进行边下边渲染[imageView bd_setImageWithURL:url options:BDIma... 需要多图片尺寸大小支持,如适配不同图片展示窗口。 objectivec // 您可以继承BDWebImageURLFilter类, 重写- (NSString \*)identifierWithURL:(NSURL \*)url;实现自己的 hash 让同一张图片的不同 url 的 hash 结...
MAD,现代安卓开发技术:Android 领域开发方式的重大变革|社区征文
有的时候 Google 会将其翻译成`现代安卓开发`,有的时候又翻译成`新式安卓开发`,个人觉得前者的翻译虽然激进、倒也贴切。下面按照 MAD 的构成要点逐步展开,帮助大家快速了解 MAD 的技术理念。如果大家对其中的语言... 框架等多个层面提供卓越的开发体验,其愿景和优势:* 倾力打造:汇聚 Google 在 Android 行业十余年的前言开发经验* 入门简单:提供大量 Demo 和详尽文档,适用于各阶段各规模的项目* 迅速起步:提供显著降低样板代码...
进阶功能
.setView(editText) .setCancelable(false) .setPositiveButton(android.R.string.yes, (dialog, which) -> { // 此处以需要观众输入 Token 为例。观众自定义登... 以下示例代码替换了横屏直播间的 head 区域并修改了播放器尺寸。 Java public void custom(TvuLivePlayerLayoutBinding binding) { // 隐藏横屏直播间默认的 head 组件。 binding.headTvuContainer.setVis...

安卓ImageView两个宽度-相关内容

展望 2022 :Android 开发技术动向 | 社区征文

例如当屏幕宽度大于 600dp 时将默认显示两列内容、引入了类似 Chrome OS 的 Dock 栏等,同时支持拖拽分屏等功能,同时在不同窗口中启动多个应用![image.png](https://p9-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/712c61c4175c4ad08973a5e170091510~tplv-k3u1fbpfcp-5.jpeg?)## WindowManager为应对更多种类屏幕的出现,Jetpack 提供了 WindowManager 库,便于 App 更好地适配不同屏幕的尺寸。多窗口模式下的 App 不能再依赖 `...

从重构到扩展——跨端通讯SDK

> 在移动端App开发中,由于H5 Web页面具有原生应用不具备的多平台复用、热更新等诸多便利特性,我们往往会将一部分对性能体验要求不是特别高的页面采用H5 Web完成,然后App基于WebView作为容器承载页面,而跨端通讯就是... [picture.image](https://p3-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/4e30e2245a754c019d64da5d9597bc7c~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d&x-expires=1716308447&x-signature=Juny06d8j...

关于移动端适配你了解多少? | 社区征文

## 背景介绍> 我们公司的APP是通过安卓写的壳子,里面嵌套了前端开发的Vue页面或者H5页面。H5或Vue再去调用android或者IOS原生写的的方法。之前我接手的部分业务,为保证功能完整性,入口也需要使用H5实现,当时遇到了... ##### **ideal viewport:理想视口**理想视口,即`页面绘制区域可以完美适配设备宽度的视口大小`,不需要出现滚动条即可正常查看网站的所有内容,且文字图片清晰。这也是我们为什么需要使用viewport的原因。![kkk...

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

域名注册服务

cn/top/com等热门域名,首年低至1元,邮箱建站必选
1.00/首年起32.00/首年起
立即购买

DCDN国内流量包100G

同时抵扣CDN与DCDN两种流量消耗,加速分发更实惠
2.00/20.00/年
立即购买

2022年终总结-两年Androider的技术成长之路|社区征文

image?)### 起步阶段十四万字的整理看起来字数不怎么多,但是花费了我巨多的时间:比如**沈奕斐老师的社会爱情思维课**我花费了八个小时来记录两个小时的老师的干货输出;奇葩说中的老师演讲大部分也在两个小时时间... 从多个角度寻找解决办法,同时也要总结经验,多复盘,这样才能对突发事件有足够的预见性。3.[毕玄:我在阿里的十年技术感悟](https://mp.weixin.qq.com/s/xlt_Vexq6x-BSxMA9nC5Ww) 4.[《技术成长之路》精华回顾 ...

客户端 SDK

新增通过 renderView 参数指定视频流的渲染控件。详细信息,参考 开始播放。 iOSiOS 端 SDK 包含以下新增功能和变更: 更新了音视频流传输协议、优化画面显示效果。 Web/H5Web/H5 端 SDK 包含以下新增功能和变更: 修复了部分已知问题以及性能优化。 2023 年 6 月云手机客户端 SDK V1.25.0 的发布说明如下: AndroidAndroid 端 SDK 包含以下新增功能和变更: 更新 “云手机画面截图” 接口(screenShot)行为:截图的图片格式由 .png 格式...

六年安卓开发的技术回顾和展望 | 社区征文

[image.png](https://p9-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/72f43769371b44eeaa7e3ac3465a91f4~tplv-k3u1fbpfcp-5.jpeg?)在 2015 年时,偶然参加了一家公司的招聘会,在面试时,面试官问了一些简单的 Java 、安卓和算法问题。其中印象最深的就是会不会使用四大组件和 ListView。在当时移动互联网市场飞速发展时,招聘要求就是这么低。以至于现在很多老安卓回忆起当初,都很有感慨:“当初会个 ListView 就能找工作了,现在都是...

客户端 SDK

View: containerView: delegate:。 新增设置键盘启用状态接口(setKeyboardEnable)及获取键盘开关状态接口(getKeyboardEnable),支持设置是否允许用户使用键盘进行信息输入的能力。详细信息,参考 设置键盘开关。 新... 支持客户端与多个云端实例之间传输自定义消息。详细信息,参考 收发消息。 新增了客户端和云端游戏之间的消息通道连接行为变更。当客户端调用 stop 接口停止拉流后,客户端和云端游戏之间已建立的消息通道长连接不会...

集成抖音小程序加载 SDK

使用防盗链情况下需服务端同时下发多个带签名的 URL。 依赖 veImageX 云端配置中携带缩放能力的模板 图片压缩 支持配置图片质量参数,基于云端实现图片压缩。 依赖 veImageX 云端配置中携带质量参数的模板 稳定... imagex-viewer": "/miniprogram_npm/@volcengine/imagex-mp-douyin/dist/index", }}功能接入Prop(属性)该组件支持配置及相关参数与事件说明如下表所示。 属性名 类型 是否必填 说明 width Number 否 图片宽度。...

如何打造一款优秀的跨平台APP暨跨平台APP开发经验总结|社区征文

便可以同步生成 `Android` 和 `IOS` 两个平台的APP,甚至能够部分兼容微信公众号和小程序。这样节省的不仅仅是写代码的时间,更重要的是节省了多个技术团队之间跨知识结构协同的问题,同时也节省了APP与服务器端调试的... 只要有 WebView,一套代码可以很容易跨iOS、安卓、Web、小程序、快应用多个平台。可以简单理解为在 App 里面打开了一个 Chrome 浏览器,在这个浏览器里面打开一个 Tab 去加载线上或者本地的 H5 页面,这样还可以实现打...

特惠活动

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

域名注册服务

cn/top/com等热门域名,首年低至1元,邮箱建站必选
1.00/首年起32.00/首年起
立即购买

DCDN国内流量包100G

同时抵扣CDN与DCDN两种流量消耗,加速分发更实惠
2.00/20.00/年
立即购买

产品体验

体验中心

云服务器特惠

云服务器
云服务器ECS新人特惠
立即抢购

白皮书

一图详解大模型
浓缩大模型架构,厘清生产和应用链路关系
立即获取

最新活动

爆款1核2G共享型服务器

首年60元,每月仅需5元,限量秒杀
立即抢购

火山引擎增长体验专区

丰富能力激励企业快速增长
查看详情

数据智能VeDI

易用的高性能大数据产品家族
了解详情

一键开启云上增长新空间

立即咨询