首页 > 代码库 > 7、android的button如何平铺一张图片?
7、android的button如何平铺一张图片?
我想要实现的效果:,但是设计师给的是这样的:。
首先我想到的是这就像windows电脑设置壁纸有什么拉伸、自适应、平铺等类型,这个应该就是传说中的平铺吧。
那么我们知道,一个普通的button,设置他的背景,无非就是setbackgroundDrawable/resource/color这几种,可调用的方法中也没有可以设置平铺的。
怎么办呢?
1、大百度搜索“android 平铺”,搜到下面两个关键链接:
android 平铺背景图 (3种平铺方法)
【android】scaleType属性与ImagView中图片的显示的关系 (imageview中图片的对齐方式)
2、上干货
1 new_button.setX((float)x); 2 new_button.setY((float)y);//设置按钮的位置 3 4 Resources res = splash.contextTools.getResources(); 5 Drawable drawable = res.getDrawable(R.drawable.split_line);//获取图片资源 6 BitmapDrawable bd = (BitmapDrawable)drawable; 7 bd.setTileModeY(TileMode.REPEAT);//这个就是设置平铺 9 new_button.setBackgroundDrawable(bd);//设置为button的背景10 11 int width = CommonUtils.px2dip(splash.contextTools, 15);12 int height = 100;15 16 RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(width,height);17 rl.addView((View)new_button,lp);//将button添加到布局中18
3、讲解
要想实现平铺效果,有3个关键点:
①bitmapDrawable
②bitmapDrawable对应的方法setTileModeY
③从本地获取到图片资源
为什么是这3个关键点,其实理由很简单:①你要想设置平铺,必须得到要平铺的图片 ②要支持平铺,我们需要使用bitmapDrawable ③要设置平铺,我们需要知道设置的接口
好了,我觉着讲解完了,希望帮到你。如果有疑问,请参考上述两个超链接,也可留言给我。
7、android的button如何平铺一张图片?
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。