android Button背景高度被拉伸问题--解决方案
接入第三方SDK后,发现SDK提供的弹窗里,有两个按钮的高度呈被拉伸状态。
而,第三方提供的demo内,这两个按钮均呈正常状态。
对于第一次接触Android的菜鸟来说,这个问题颇为难解。第三方在尝试了几种方法之后,也宣告失败。
这种奇葩问题,让人百思不得其解。但,世间大部分问题都还是可以解决的。
由于实现按钮的是Button,因此查询了网上 button背景高度拉伸问题的帖子。有几种解决方案。
1、和margins内的值有关。修改后,无法解决问题。
2、设置MinHeight 和 MinWidth 为0dp。问题解决。
3、将Button用ImageView和ImageButton替代。未测试。
问题解决之后,才发现demo的android版本是4.0.3,而项目的版本是4.0.差异貌似就这一点。
有人提到:imagebutton,在Android默认的Theme里是有最小高度设置的,所以你会看到imagebutton有些时候会比imageview,textview这类view大,而且3.0以前的默认Theme和3.0以后的HoloTheme在imagebutton上的最小高度也不一样,所以你会看到不同的Android版本可能imagebutton的代码一样但是宽高不一样。
其实,上段话我没看懂。但大体我理解为,和版本有关。
android Button背景高度被拉伸问题--解决方案的更多相关文章
- 解决android:background背景图片被拉伸问题
ImageView中XML属性src和background的区别: background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的大小,不会进行拉伸.src是图片内容(前 ...
- 安卓中圆角背景图被拉伸的解决方案——.9.png
举个例子: 从网上找了一张图片 如果我们直接用这张蓝色的图来做登录按钮的背景.将这个图片设为背景以后 我们可以发现四个角全部变形了,一点也不美观.针对此问题,我们通过.9图来解决. 首先我们先了解一下 ...
- Button背景图片有拉伸
1.将图片做成9.png2.用TextView 3.将minHeight, minWidth设为0 4.http://blog.csdn.net/oathevil/article/details/23 ...
- android Button 切换背景,实现动态按钮和按钮颜色渐变
android Button 切换背景,实现动态按钮和按钮颜色渐变 一.添加android 背景筛选器selector实现按钮背景改变 1.右键单击项目->new->Oth ...
- android selector 背景选择器的使用, button (未点击,点击,选中保持状态)效果实现
android selector 背景选择器的使用, button (未点击,点击,选中保持状态)效果实现 首先看到selector的属性: android:state_focus ...
- Android进阶笔记18:Android 获取Button的高度、宽度、坐标值
1. 问题 如何获取一个控件的长和高,相信很多朋友第一眼看见这个问题都会觉得很简单,直接在onCreate里面调用getWidth.getMeasuredWidth不就可以获得了吗,但是,事实上是并没 ...
- 解决chrome浏览器对于自动填充的input表单添加的默认的淡黄色背景问题 && 一般的浏览器input和button的高度不一致问题
解决chrome浏览器对于自动填充的input表单添加的默认的淡黄色背景问题 如果我们把一个表单设置位 autofocus ,这时这个表单在获取焦点后就会产生淡黄色的背景,我们就是使用!importa ...
- Android Button点击效果(按钮背景变色、文字变色)
一. 说明 Android Button的使用过程中,我们会需要为Button添加点击效果,不仅仅按钮的背景色需要变化,而且有时,我们连文字的颜色都希望变化,我们可以使用StateListDrawab ...
- Android Button的基本使用
title: Android Button的基本使用 tags: Button,按钮 --- Button介绍: Button(按钮)继承自TextView,在Android开发中,Button是常用 ...
随机推荐
- 设置TreeView背景色
以下为在Csdn上找到的Treeview资源管理器代码,怎样改变其背景色?用:SendMessage SysTreeWindow,TVM_SETBKCOLOR,0,byval RGB(255,255, ...
- MVC下的DAO接口类和SERVICE接口类区别?
简单理解: DAO数据库访问对象 实现连接数据库 修改.添加等细节 service服务层 面向功能 把一个整个服务 细化 调用DAO其实service其中都是一些方法 去调用DAO 甚至方法名都和DA ...
- spring @Service()中初始化方法
@Service(value = "xxxServiceImpl" xxxxxxxx) public class XXXSerivceImpl { public void init ...
- Druid register mbean error
key: [com.alibaba.druid.stat.DruidDataSourceStatManager.addDataSource(DruidDataSourceStatManager.jav ...
- OpenWrt的开机启动服务(init scripts)
参考 https://wiki.openwrt.org/doc/techref/initscripts 以一个简单的例子来说明 #!/bin/sh /etc/rc.common # Example s ...
- Centos5, 6, 以及Ubuntu18.04下更改系统时间和时区
http://www.namhuy.net/2435/how-to-change-date-time-timezone-on-centos-6.html 查看日期(使用 -R 参数会以数字显示时区) ...
- 小程序三:视图层之WXML
WXML WXML(WeiXin Markup Language)是MINA设计的一套标签语言,结合基础组件.事件系统,可以构建出页面的结构. [1]数据绑定 1.1 简单绑定 数据绑定使用" ...
- 【laravel54】如果开启了自带的时间戳(Y-h-m H:s:m),getInsertId一定要手动加上created_at 和 updated_at字段填充
[laravel54]如果开启了自带的时间戳(Y-h-m H:s:m),getInsertId一定要手动加上created_at 和 updated_at字段填充
- Ways to 优化JAVA程序设计和编码,提高JAVA性能
通过使用一些辅助性工具来找到程序中的瓶颈,然后就可以对瓶颈部分的代码进行优化.一般有两种方案:即优化代码或更改设计方法.我们一般会选择后者,因为不去调用以下代码要比调用一些优化的代码更能提高程序的性能 ...
- Linux-Memcache和Redis常用命令
Memcache: 支持类型: String add, delete, set, replace, get, flush_all, stats, stats reset, stats i ...