【问题标题】:Android circular imageview with two borders CROPPED带有两个边框的 Android 圆形图像视图 CROPPED
【发布时间】:2016-08-03 10:47:53
【问题描述】:

我正在尝试制作一个带有两个边框的圆形 imageView。

圆形图像是用library 制作的,它只允许制作一个边框,带有app:civ_border_color 属性。

第二边框是通过设置背景属性来实现的。

我的问题是,用背景制作的第二个边框在两侧被裁剪,如下所示:


圆形图像

<de.hdodenhof.circleimageview.CircleImageView xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/profile_image"
    android:layout_width="wrap_content"
    android:layout_gravity="center"
    android:background="@drawable/border"
    android:padding="0dp"
    android:layout_margin="0dp"
    android:layout_height="200dp"
    android:src="@drawable/mrwhite"
    app:civ_border_width="3dp"
    app:civ_border_color="#BF0404" />

第二个边框

<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:innerRadius="0dp"
    android:shape="ring"
    android:thicknessRatio="1.9"
    android:useLevel="false" >
  <solid android:color="@android:color/transparent" />

  <stroke
      android:width="5dp"
      android:color="#F2F2F2" />
</shape>

【问题讨论】:

    标签: c# android xml xamarin.android


    【解决方案1】:

    thicknessRatio 值更改为2

    android:thicknessRatio="2"
    

    【讨论】:

      【解决方案2】:

      使用ImageViewCardView创建RoundedImageView的简单方法

      检查这个例子:https://github.com/SergeySharipov/RoundedImageView

      将以下依赖项添加到您的应用模块的 build.gradle 文件中:

       dependencies {
              implementation 'com.android.support:cardview-v7:27.1.0'
       }
      

      将代码添加到您的布局并更改“YOUR_PICTURE”:

      <android.support.v7.widget.CardView
              android:id="@+id/card_view_for_image"
              android:foreground="@drawable/shape"
              android:layout_margin="2dp"
              android:layout_width="200dp"
              android:layout_height="200dp"
              app:cardCornerRadius="100dp">
      
              <ImageView
                  android:id="@+id/rounded_image_view"
                  android:layout_width="match_parent"
                  android:layout_height="match_parent"
                  android:scaleType="centerCrop"
                  android:src="@drawable/YOUR_PICTURE" />
      
      </android.support.v7.widget.CardView>
      

      在drawable中创建shape.xml并添加:

      <?xml version="1.0" encoding="utf-8"?>
      <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
          <item>
              <shape android:shape="oval">
                  <stroke
                      android:width="10dp"
                      android:color="#f44336" />
              </shape>
          </item>
          <item>
              <shape android:shape="oval">
                  <stroke
                      android:width="5dp"
                      android:color="#ffffff" />
              </shape>
          </item>
      </layer-list>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-05-07
        • 1970-01-01
        • 2017-10-31
        • 2015-01-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多