«

使用开源库RoundedImageView 创建圆角ImageView以及引用时遇到的问题

时间:2024-3-2 18:17     作者:韩俊     分类: Android


转载请标明出处:http://blog.csdn.net/u013015161/article/details/45939685

自己业余开发的一个小程序,需要用圆角矩形的形式来展示图片。圆角矩形,很容易想到用shape样式来实现,但这次需要展示图片,同时图片还是需要可以动态更改的, 所以最好是通过一个圆角矩形的ImageView来实现。一时没什么思路,于是去GitHub上找到一个比较有名的开源库,即RoundedImageView。那就先使用再学习吧。


下载下来,导入eclipse,发现目录格式如下:


将java代码拖到src里, 报错如下:


比较好解决的一个错误是缺少android-support-v4.jar, 这个jar包很好获取,拖到工程即可。另一个错误是缺少com.squareup.picasso.Transformation这样一个类。搜索发现,这是github上的另外一个开源项目picasso。下载之,无法导入eclipse。 去picasso-masterpicassosrcmain目录下查看发现缺少AndroidManifest.xml文件, 于是手动创建之,内容如下:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="com.squareup.picasso">
</manifest>

之后顺利导入picasso工程,将java代码移到src目录下, 发现一堆错误:



其实这个时候我是有些抓狂的,因为查看这些错误之后,发现基本上全都是类库缺失:org.jetbrains.annotations.TestOnly 和 com.squareup.okhttp。 第一个看名字就觉得关系不大, 第二个更是跟网络相关的。于是决定:不找这些类库了, 出错的文件直接删掉。 删掉之后, 有可能会引起更多的文件报错,没关系,继续删,删到工程没错为止。删文件结果如下:



终于没错了,幸好 我们实际需要的Transformation文件还在。

这个时候剩下的文件也不多了。。。就没有当作 library处理,而是直接把代码拷入RoundedImageView工程。这个时候RoundedImageView工程可能还有一些简单的标红, 根据eclipse的提示就可以解决了。

现在RoundedImageView工程如下:


这个时候已经可以用了。勾选为library,让需要的工程去引用即可。直接在布局文件里使用该空间代码参考如下:

<com.makeramen.roundedimageview.RoundedImageView
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:id="@+id/imageView1"
        android:src="@drawable/spongebaby"
        android:layout_height="200dp"
        android:layout_width="200dp"
        android:layout_centerInParent="true"
        android:scaleType="fitCenter"
        app:riv_corner_radius="30dip"
        app:riv_border_width="20dip"
        app:riv_border_color="#333333"
        app:riv_mutate_background="true"
        app:riv_tile_mode="repeat"
        app:riv_oval="true" />

效果:


是不是萌萌的。


本文涉及开源项目地址:

RoundedImageView: https://github.com/vinc3m1/RoundedImageView

picasso: https://github.com/square/picasso


标签: android

热门推荐