通过xml的Imageview圆角和蒙版形状在AS 3.0中不起作用

时间:2017-12-10 11:35:02

标签: android image android-layout

创建主题前检查的主题

  1. Mask layout with rounded corner xml shape
  2. Mask ImageView with round corner background
  3. How can I make rounded (circled) ImageView box on Android Studio?
  4. ImageView in circular through xml
  5. https://inducesmile.com/android/how-to-make-circular-imageview-and-rounded-corner-imageview-in-android/
  6. 我想将遮罩应用于ImageView,例如从pic1pic2,但由多个渐变组成

    起初我正在使用

    <?xml version="1.0" encoding="utf-8"?>
    <shape xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="rectangle" >
        <corners android:radius="36dp" />
    </shape>
    

    然后添加了solid,然后尝试FrameLayout,然后尝试从链接5添加库。没有提议的方法确实应用了掩码。

    导致图书馆出错
    getMenuInflater().inflate(R.menu
    if (id == R.id.action_settings
    

    无法解析menuaction_settings.

    如何接受答案,但我无法重现答案?我在xml文件中缺少什么?即使复制粘贴整个ImageView +形状也无济于事

1 个答案:

答案 0 :(得分:0)

仅通过java的最终解决方案(@pskink提出的原创想法)

    ImageView img = (ImageView) findViewById(R.id.img);
    Bitmap src1 = BitmapFactory.decodeResource(getResources(), R.drawable.img_port);
    RoundedBitmapDrawable dr1 = RoundedBitmapDrawableFactory.create(getResources(), src1);
    dr1.setCornerRadius(Math.max(src1.getWidth(), src1.getHeight()) / 10f);
    img.setImageDrawable(dr1);

xml enter link description here的另一个简单解决方案 即

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <corners android:radius="15dp"  />
    <solid/>
</shape>
活动中的

ImageView.setClipToOutline(true)。 附加说明:不适用于