大佬教程收集整理的这篇文章主要介绍了android – ImageView正在重新调整大小,同时绘制边框形状,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
<shape xmlns:android="http://scheR_619_11845@as.android.com/apk/res/android" > <solid android:color="#00FFFFFF" /> <stroke android:width="3dp" android:color="#00ff00" /> </shape>
这是我绘制形状的代码
private void drawLayer(ImageView tempView,Drawable drble,int wherecall) { Drawable drawableRes = getresources() .getDrawable(R.drawable.shape_two);// loadDrawable(R.drawable.shape_two); int h = tempView.getMeasuredHeight(); int w = tempView.getMeasuredWidth(); drawableRes.setBounds(0,w,h); Drawable[] drawableLayers = { drble,drawableRes }; ld = new LayerDrawable(drawableLayers); if (wherecall != 3) { tempView.setBACkground(ld); } else { tempView.setImageDrawable(ld); } td = new TransitionDrawable(drawableLayers); td.setCrossFadeEnabled(true); }
这里tempview是我的ImageView和drble是另一个drawable我在另一层使用.此代码没有任何错误消息正常工作.
我的问题是当我在我的ImageViews上绘制形状时,它会重新调整大小(更改高度和宽度).我有不同大小的imageView,我想使用单一形状的xml绘制边框,我的ImageView大小不应该这样做.任何人都可以告诉我如何实现它.
搜索了很多东西后我才知道我不能对它进行位图操作,根据形状重新调整大小,因为xml文件不是位图.我在某地读过这个问题可以通过使用canvas来解决但是怎么做..
更新:
我观察到,虽然更改图层onsingletap只有高度增加而不是ImageView的宽度.如果我的布局有4个ImageView,那么第一次只在不同的imageView上单击,所有imageView重新调整大小一次.之后,如果我们再次点击 – 再没有什么可以重新调整大小.
我想在第一次在ImageView重新设置视图上设置图层,然后调整自己.我不知道为什么会发生这种情况.
我正在为我的所有布局应用相同的代码,对于某些布局,它的工作正常,有些则不是.
我还试过了什么.
>我已经尝试通过GradientDrawable制作边框图像
GradientDrawable gd = new GradientDrawable(); gd.setstroke(3,Color.GREEN); gd.setSize(drble.getBounds().width(),drble.getBounds().height()); gd.setColor(0xff424242);
>我的另一个尝试是在画布上绘制图像,
>将边框图像放在可绘制文件夹中,根据ImageView的高度和宽度重新调整它,将其转换为drawable并进行设置.
>我还试图减少内部图像大小和边框位图大小是图像视图的大小,也是相反的.
每件事都给我相同的结果.
以上是大佬教程为你收集整理的android – ImageView正在重新调整大小,同时绘制边框形状全部内容,希望文章能够帮你解决android – ImageView正在重新调整大小,同时绘制边框形状所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。