【问题标题】:Failed to create a circular imageView创建圆形 imageView 失败
【发布时间】:2016-09-03 16:56:26
【问题描述】:

我正在使用第三方库(依赖项)在登录页面中制作循环 ImageView,但我无法制作它,即 ImageView 不是循环的。

这是我尝试过的。

activity_main

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@color/violetred"
    android:gravity="center"
    android:orientation="vertical"
    android:padding="10dp"
    android:weightSum="1">

    <de.hdodenhof.circleimageview.CircleImageView xmlns:app="http://schemas.android.com/apk/res-auto"
        android:id="@+id/imgProfilePicture"
        android:layout_width="120dp"
        android:layout_height="120dp"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="10dp"
        android:background="@mipmap/profile"
        app:border_color="@color/white"
        app:border_width="3dp"
        android:layout_gravity="center_horizontal"
        android:orientation="vertical" />


    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:orientation="vertical"
        android:paddingLeft="20dp"
        android:paddingRight="20dp" >

        <EditText
            android:id="@+id/name"
            android:layout_width="325dp"
            android:layout_height="wrap_content"
            android:layout_marginBottom="10dp"
            android:background="@color/white"
            android:hint="@string/hint_name"
            android:padding="10dp"
            android:singleLine="true"
            android:textColor="@color/input_login"
            android:textColorHint="@color/input_login_hint" />

        <EditText
            android:id="@+id/password"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginBottom="10dp"
            android:background="@color/white"
            android:hint="@string/hint_password"
            android:inputType="textPassword"
            android:padding="10dp"
            android:singleLine="true"
            android:textColor="@color/input_login"
            android:textColorHint="@color/input_login_hint" />

        <!-- Login Button -->

        <Button
            android:id="@+id/btnLogin"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="20dip"
            android:background="@color/btn_login_bg"
            android:text="@string/btn_login"
            android:textColor="@color/btn_login" />

        <Button
            android:id="@+id/btnLinkToRegisterScreen"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="20dp"
            android:background="@null"
            android:text="Create account"
            android:textAllCaps="false"
            android:textColor="@color/white"
            android:textSize="15dp" />
    </LinearLayout></LinearLayout>

【问题讨论】:

  • CircleImageView如何设置图片?
  • @Jj 我关注这个answer
  • 您是否尝试过以下操作? android:src="@drawable/image"
  • @mipmap/profile 是否显示在普通的 ImageView 中?
  • 看起来一切正常。如果您一切正常,请查看此自述文件。 github.com/hdodenhof/CircleImageView

标签: android xml imageview


【解决方案1】:

我现在不在我的电脑上,但我有一个圆形图像视图工作,但我认为来自 support.design 库,你应该检查一下。当我有我的电脑时,我可以给你一个更好的答案

更新:

在你的 build.gradle 中添加这个到依赖项

compile 'de.hdodenhof:circleimageview:2.1.0'

然后,在你的 xml 上:

<de.hdodenhof.circleimageview.CircleImageView
    android:id="@+id/image"
    android:layout_width="wrap_content"
    android:layout_height="0dp"
    android:layout_weight="45"
    android:src="@drawable/image"
    android:layout_gravity="center_horizontal" />

更新 2: 更好的解决方案是使用毕加索库

 Picasso.with(this)
.load(R.mipmap.profile)
.transform(new CropCircleTransformation() )
.into(ImageView);

不要忘记在 gradle 文件中添加库

【讨论】:

  • 顺便说一句,这不是我不久前才发现的我的图书馆,它是这个人的作品 github.com/hdodenhof
  • 由于我的回答是几天前的,所以我忘记了您使用的是同一个库,但这对我有用,也许您缺少依赖项代码
  • 不确定是什么问题..我仍然无法获得圆形图像:(
  • 伙计,我认为这是因为您将图像设置为圆形 img 的背景,尝试像我一样将其用作源
【解决方案2】:

似乎问题是命名空间冲突

试试这个

    app:civ_border_width="3dp"
    app:civ_border_color="@color/white"

不是这个

    app:border_color="@color/white"
    app:border_width="3dp"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-04-18
    • 1970-01-01
    • 1970-01-01
    • 2018-06-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多