GithubHelp home page GithubHelp logo

getactivity / shapeview Goto Github PK

View Code? Open in Web Editor NEW
789.0 10.0 74.0 19.96 MB

Shape 支持在布局中直接定义啦,支持设置阴影,文字渐变色,状态选择器

License: Apache License 2.0

Java 100.00%
shapetextview shapeview shapebutton shapeframelayout shapelinearlayout shapeconstraintlayout shaperelativelayout supertextview backgroundlibrary shapeedittext

shapeview's Introduction

我是一名热爱 Android 技术的程序员,平时爱造轮子,人送外号轮子哥

我的理想是让这个世界没有难开发的安卓项目,消灭一切难维护的代码。

shapeview's People

Contributors

getactivity avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

shapeview's Issues

无效果

【警告:请务必按照 issue 模板填写,不要抱有侥幸心理,一旦发现 issue 没有按照模板认真填写,一律直接关闭】

问题描述

在 targetSdk 32 版本中,kotlin,设置圆角属性无效

  • 框架版本【必填】:XXX
    ShapeView:8.5'
  • 问题描述【必填】:XXX

没有生效

  • 复现步骤【必填】:XXX(注意:目前不受理没有复现步骤的 Bug 单)
    引用控件
  • 是否必现【必填】:填是/否

  • 出现问题的手机信息【必填】:请填写出现问题的品牌和机型
    oppo A32
  • 出现问题的安卓版本【必填】:请填写出现问题的 Android 版本
    11
  • 问题信息的来源渠道【必填】:请填写问题的来源(例如:自己遇到的/Bugly 看到的/用户反馈等等)
    自己遇到的

请回答

  • 是部分机型还是所有机型都会出现【必答】:部分/全部(例如:某为,某 Android 版本会出现)

  • 框架最新的版本是否存在这个问题【必答】:是/否(如果用的是旧版本的话,建议升级看问题是否还存在)

  • 是否已经查阅框架文档还未能解决的【必答】:是/否(文档会提供最常见的问题解答,可以看看是否有自己想要的)

  • issue 是否有人曾提过类似的问题【必答】:是/否(看看曾经有人提过类似的问题,先参考一下别人是怎么解决的)

  • 是否可以通过 Demo 来复现该问题【必答】:是/否(排查一下是不是自己的项目代码写得有问题导致的)

  • 使用原生的 shape.xml 来实现是否也会出现该问题【必答】:是/否(排查一下是不是框架的代码存在问题导致的)

其他

  • 提供报错堆栈(如果有报错的话必填,注意不要拿被混淆过的代码堆栈上来)

  • 提供截图或视频(根据需要提供,此项不强制)

  • 提供解决方案(如果已经解决了的话,此项不强制)

建议提供EditText的支持

设计师给的UI有的EditText的背景是矩形的,有的是两边是圆形的,看着您实现的TextView挺像,但无法直接用。 最好可以有个类产出是Drawable。 这样EditText设置下background就可以实现不同的形状了。

只是建议哈,如有实现难度,请忽略。

ShapeFrameLayout使用shape_solidDisabledColor的时候好像没效果,enable已设为false

问题描述

  • 框架版本:6.2

  • 问题描述:ShapeFrameLayout使用shape_solidDisabledColor的时候好像没效果,enable已设为false

  • 复现步骤:ShapeFrameLayout使用shape_solidDisabledColor,enable设为false

  • 是否必现:是

  • 手机信息:xiaomi8 se / Android 10

请回答

  • 是部分机型还是所有机型都会出现:全部

  • 框架最新的版本是否存在这个问题:是

  • 是否已经查阅框架文档还未能解决的:是

  • issue 是否有人曾提过类似的问题:否

  • 是否可以通过 Demo 来复现该问题:是

  • 使用原生的 shape.xml 来实现是否也会出现该问题:否

其他

  • 提供报错堆栈(如果有报错的话必填)

  • 提供截图或视频(根据需要提供,此项不强制)

  • 提供解决方案(如果已经解决了的话,此项不强制)

implementation ShapeView后,编译出现AAPT错误。

我的工程只要添加ShapeView库,编译出现以下出错,不得解:

xxx\src\main\res\values\strings.xml:1238:5-115: AAPT: warn: multiple substitutions specified in non-positional format; did you mean to add the formatted="false" attribute?.

去除ShapeView即编译正常。

是不是没有背景色的渐变方向设置?

建议收集

  • issue 是否有人曾提过类似的问题?(必答项,一旦出现重复提问我将不会再次解答)

  • 你觉得框架有什么不足之处?(必答项,你可以描述框架有什么令你不满意的地方)

  • 你觉得该怎么去完善会比较好?(非必答项,你可以提供一下自己的想法或者做法供作者参考)

设置的渐变方向无效

【警告:请务必按照 issue 模板填写,不要抱有侥幸心理,一旦发现 issue 没有按照模板认真填写,一律直接关闭】

问题描述

  • 框架版本【必填】:8.5

  • 问题描述【必填】:设置为垂直渐变,但显示出来始终是水平方向的渐变

                      <com.hjq.shape.layout.ShapeRelativeLayout
                          android:layout_width="match_parent"
                          android:layout_height="@dimen/dp_250"
                          app:shape_textGradientOrientation="vertical"
                          app:shape_endColor="@color/white"
                          app:shape_startColor="@color/fill_2_color"
                          />
    

请回答

  • 是部分机型还是所有机型都会出现【必答】:只测试了华为Mata 40

  • 框架最新的版本是否存在这个问题【必答】:最新

  • 是否已经查阅框架文档还未能解决的【必答】:是

  • issue 是否有人曾提过类似的问题【必答】:是/否(看看曾经有人提过类似的问题,先参考一下别人是怎么解决的)

  • 是否可以通过 Demo 来复现该问题【必答】:是/否(排查一下是不是自己的项目代码写得有问题导致的)

  • 使用原生的 shape.xml 来实现是否也会出现该问题【必答】:是/否(排查一下是不是框架的代码存在问题导致的)

其他

  • 提供报错堆栈(如果有报错的话必填,注意不要拿被混淆过的代码堆栈上来)

  • 提供截图或视频(根据需要提供,此项不强制)

  • 提供解决方案(如果已经解决了的话,此项不强制)

UI样式建议

【警告:请务必按照 issue 模板填写,不要抱有侥幸心理,一旦发现 issue 没有按照模板认真填写,一律直接关闭】

建议收集

  • issue 是否有人曾提过类似的问题?【必答】否

  • 框架文档是否有提及到此问题?【必答】:否

  • 你觉得框架有什么不足之处?【必答】
    image
    如图 右上角的三角形样式 ,该框架无法shape出来,建议增加样式

ShapeFrameLayout使用shape_solidDisabledColor的时候好像没效果

问题描述

  • 框架版本:6.2

  • 问题描述:ShapeFrameLayout使用shape_solidDisabledColor的时候好像没效果,enable已设为false

  • 复现步骤:在ShapeFrameLayout使用shape_solidDisabledColor

  • 是否必现:是

  • 手机信息:小米 8se / Android 10

请回答

  • 是部分机型还是所有机型都会出现:部分/全部(例如:某为,某 Android 版本会出现)
    全部
  • 框架最新的版本是否存在这个问题:是/否(如果用的是旧版本的话,建议升级看问题是否还存在)
  • 是否已经查阅框架文档还未能解决的:是/否(文档会提供最常见的问题解答,可以看看是否有自己想要的)
  • issue 是否有人曾提过类似的问题:是/否(看看曾经有人提过类似的问题,先参考一下别人是怎么解决的)
  • 是否可以通过 Demo 来复现该问题:是/否(排查一下是不是自己的项目代码写得有问题导致的)
  • 使用原生的 shape.xml 来实现是否也会出现该问题:是/否(排查一下是不是框架的代码存在问题导致的)

其他

  • 提供报错堆栈(如果有报错的话必填)

  • 提供截图或视频(根据需要提供,此项不强制)

  • 提供解决方案(如果已经解决了的话,此项不强制)

设置布局为宽度wrap_content 动态给布局设置外边框 会导致布局宽度直接撑满

【警告:请务必按照 issue 模板填写,不要抱有侥幸心理,一旦发现 issue 没有按照模板认真填写,一律直接关闭】

问题描述

  • 框架版本【必填】:8.3

  • 问题描述【必填】:设置布局为宽度wrap_content 动态给布局设置外边框 会导致布局宽度直接撑满

  • 复现步骤【必填】:设置布局为宽度wrap_content 动态给布局设置外边框 会导致布局宽度直接撑满(注意:目前不受理没有复现步骤的 Bug 单)

  • 是否必现【必填】:是

  • 出现问题的手机信息【必填】:请填写出现问题的品牌和机型 小米10U

  • 出现问题的安卓版本【必填】:请填写出现问题的 Android 版本 12

请回答

  • 是部分机型还是所有机型都会出现【必答】:部分/全部(例如:某为,某 Android 版本会出现) 未测试其他机型

  • 框架最新的版本是否存在这个问题【必答】:是/否(如果用的是旧版本的话,建议升级看问题是否还存在) 是

  • 是否已经查阅框架文档还未能解决的【必答】:是/否(文档会提供最常见的问题解答,可以看看是否有自己想要的) 是

  • issue 是否有人曾提过类似的问题【必答】:是/否(看看曾经有人提过类似的问题,先参考一下别人是怎么解决的)无

  • 是否可以通过 Demo 来复现该问题【必答】:是/否(排查一下是不是自己的项目代码写得有问题导致的)是

  • 使用原生的 shape.xml 来实现是否也会出现该问题【必答】:是/否(排查一下是不是框架的代码存在问题导致的)

其他

  • 提供报错堆栈(如果有报错的话必填,注意不要拿被混淆过的代码堆栈上来)

  • 提供截图或视频(根据需要提供,此项不强制)

  • <com.hjq.shape.layout.ShapeRelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/srl_item"
    android:layout_width="wrap_content"
    android:layout_height="32dp"
    android:minWidth="60dp"
    android:paddingLeft="21dp"
    android:paddingRight="21dp"
    app:shape_radius="5dp"
    app:shape_strokeColor="#CFD7E6"
    app:shape_strokeWidth="1dp"/>

if (!carPictureBean.isSelected) {
itemBinding.srlItem.shapeDrawableBuilder.setStrokeWidth(1.dp.toInt())
.setStrokeColor("#CFD7E6".toColorInt()).intoBackground()
itemBinding.srlCorrect.isVisible = false
} else {
itemBinding.srlItem.shapeDrawableBuilder.setStrokeWidth(2.dp.toInt())
.setStrokeColor("#000000".toColorInt()).intoBackground()
itemBinding.srlCorrect.isVisible = true
}

我的布局设置为了宽度自适应 但是有个最小值为60dp 布局用作在rv上,通过点击item我动态给布局加上边框 整个布局就直接撑满了
e686a64a05504fb48be9c5752327ae8
a542485497e3867c265e2ca33e68ccb

  • 提供解决方案(如果已经解决了的话,此项不强制)

关于阴影问题请教

问题描述

  • 框架版本【必填】:8.0

  • 问题描述【必填】:阴影

  • 复现步骤【必填】:XXX

  • 是否必现【必填】:填是/否

  • 出现问题的手机信息【必填】:请填写出现问题的品牌和机型

  • 出现问题的安卓版本【必填】:请填写出现问题的 Android 版本

请回答

  • 是部分机型还是所有机型都会出现【必答】:部分/全部(例如:某为,某 Android 版本会出现)

  • 框架最新的版本是否存在这个问题【必答】:是/否(如果用的是旧版本的话,建议升级看问题是否还存在)

  • 是否已经查阅框架文档还未能解决的【必答】:是/否(文档会提供最常见的问题解答,可以看看是否有自己想要的)

  • issue 是否有人曾提过类似的问题【必答】:是/否(看看曾经有人提过类似的问题,先参考一下别人是怎么解决的)

  • 是否可以通过 Demo 来复现该问题【必答】:是/否(排查一下是不是自己的项目代码写得有问题导致的)

  • 使用原生的 shape.xml 来实现是否也会出现该问题【必答】:是/否(排查一下是不是框架的代码存在问题导致的)

框架的阴影很方便 但是在开发中遇到一个,比如一个view是宽180dp高200dp UI图上是20dp的阴影宽度 所以我在写布局的时候 高宽各加了 阴影宽度x2 ,但实际效果出来 不用阴影的180dp 200dp画出来的view 比用阴影180dp+ 20x2 200dp+20x2 画出来的要大一些,我想确认在用阴影的时候是不是我这样去计算增加view的高宽,理论上这样计算阴影的view画出来的应该和不带阴影的是一个大小,我指的是不含阴影处

其他

  • 提供报错堆栈(如果有报错的话必填,注意不要拿被混淆过的代码堆栈上来)

  • 提供截图或视频(根据需要提供,此项不强制)

image
image

  • 提供解决方案(如果已经解决了的话,此项不强制)

代码设置shapeDrawableBuilder.solidColor无效果

`val llybg=holder.getView(R.id.lly_item_bg)

            if (item.isChecked){
                llybg.shapeDrawableBuilder.solidColor = context.resources.getColor(R.color.color_FFF8E5)
                holder.setTextColor(R.id.tv_item_title,context.resources.getColor(R.color.color_FFBB00))

            }else{
                llybg.shapeDrawableBuilder.solidColor = context.resources.getColor(R.color.color_F8F8F8)
                holder.setTextColor(R.id.tv_item_title,context.resources.getColor(R.color.color_242925))
            }`

能否考虑支持foreground?

有个对ImageView加遮罩的需求,我用的ShapeImageView,如果加一层ShapeFrameLayout之类的,略显繁琐了,如果能直接支持foreground相关属性就完美了,希望作者大大能考虑下,谢谢。

设置 solidColor 颜色后,如何动态 删除solidColor 设置呢

设置 solidColor 颜色后,如何动态 删除solidColor 设置呢

  • 框架版本【必填】:v8.3

  • 问题描述【必填】:有个需求选中时设置了 solidColor,想取消选中时,删除 solidColor,不知道使用哪个api 删除

  • 复现步骤【必填】:列表 点击

  • 是否必现【必填】:是

  • 出现问题的手机信息【必填】:所有手机

  • 出现问题的安卓版本【必填】:所有版本

ShapeFrameLayout使用shape_solidDisabledColor的时候好像没效果

建议收集

  • issue 是否有人曾提过类似的问题?(必答项,一旦出现重复提问我将不会再次解答)
  • 你觉得框架有什么不足之处?(必答项,你可以描述框架有什么令你不满意的地方)
    ShapeFrameLayout使用shape_solidDisabledColor的时候好像没效果,enabled已设为false
  • 你觉得该怎么去完善会比较好?(非必答项,你可以提供一下自己的想法或者做法供作者参考)
    看下是否可以支持

渐变色背景和纯色背景切换异常

【警告:请务必按照 issue 模板填写,不要抱有侥幸心理,一旦发现 issue 没有按照模板认真填写,一律直接关闭】

问题描述

  • 框架版本【必填】:8.3

  • 问题描述【必填】:纯色背景切换为渐变色的时候正常,反切换的时候就出现了异常 无法切换为纯色背景

  • 复现步骤【必填】:首先通过xml设置纯色背景,然后再代码中设置为渐变色背景最后再切换会纯色背景就无法切换成功
    if (isShow) {
    shapeButton.getShapeDrawableBuilder()
    .setSolidGradientColors(0xFFFFFFF, 0xFF000000)
    .intoBackground();
    } else {
    shapeButton.getShapeDrawableBuilder()
    .setSolidColor(0xFF000000)
    .intoBackground();
    }

  • 是否必现【必填】:是

  • 出现问题的手机信息【必填】:红米k30 vivo v1838A

  • 出现问题的安卓版本【必填】:android 12以及android 11

请回答

  • 是部分机型还是所有机型都会出现【必答】:全部

  • 框架最新的版本是否存在这个问题【必答】:是

  • 是否已经查阅框架文档还未能解决的【必答】:是

  • issue 是否有人曾提过类似的问题【必答】:否

  • 是否可以通过 Demo 来复现该问题【必答】:是

  • 使用原生的 shape.xml 来实现是否也会出现该问题【必答】:否

其他

  • 提供报错堆栈(如果有报错的话必填,注意不要拿被混淆过的代码堆栈上来)

  • 提供截图或视频(根据需要提供,此项不强制)

  • 提供解决方案(如果已经解决了的话,此项不强制)

设置指定方向的阴影

现在设置了阴影,默认就是四个方向都会出现阴影,能否增加一个设置指定方向阴影的属性?

ShapeConstraintLayout设置了shape_radius不会作用到子view

ShapeConstraintLayout设置了shape_radius,父容器里包含了一个ImageView,但是图片并没有被按照预想的被应用父容器设置的radius。

代码如下:
<com.hjq.shape.layout.ShapeConstraintLayout
android:id="@+id/first"
android:layout_width="124dp"
android:layout_height="124dp"
android:padding="1dp"
app:shape_solidColor="@color/theme_color"
android:layout_marginTop="@dimen/dimen_20"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/title"
app:shape_radius="@dimen/dimen_14">

            <com.hjq.shape.view.ShapeImageView
                android:id="@+id/iv_first"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:scaleType="centerCrop"
                android:src="@mipmap/tj" />

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:src="@mipmap/icon_ghph_normal"
                app:layout_constraintBottom_toBottomOf="@+id/iv_first"
                app:layout_constraintEnd_toEndOf="@+id/iv_first" />

        </com.hjq.shape.layout.ShapeConstraintLayout>

使用ShapeConstraintLayout 以及 ShapeView 设置阴影的时候 阴影区域会全黑

问题描述

  • 框架版本【必填】:8.2

  • 问题描述【必填】:使用ShapeConstraintLayout 以及 ShapeView 设置阴影的时候 阴影区域会全黑

  • 复现步骤【必填】:XXX

  • 是否必现【必填】:是

  • 出现问题的手机信息【必填】:OPPO R11s 2017年11月份发布的手机 也确实有点老了 但是还能做调试机

  • 出现问题的安卓版本【必填】:8.1.0

请回答

  • 是部分机型还是所有机型都会出现【必答】:部分 目前仅OPPO R11s 但不确定OPPO其他机型有没有问题

  • 框架最新的版本是否存在这个问题【必答】:是

  • 是否已经查阅框架文档还未能解决的【必答】:是

  • issue 是否有人曾提过类似的问题【必答】:否

  • 是否可以通过 Demo 来复现该问题【必答】:是

  • 使用原生的 shape.xml 来实现是否也会出现该问题【必答】:否

其他

  • 提供截图或视频(根据需要提供,此项不强制)
            <com.hjq.shape.layout.ShapeConstraintLayout
                android:layout_width="match_parent"
                android:id="@+id/cl_test"
                android:layout_marginStart="10dp"
                android:layout_marginEnd="10dp"
                app:shape_shadowSize="6dp"
                app:shape_shadowColor="@color/shadowColor"
                app:shape_solidColor="@color/white"
                app:layout_constraintTop_toBottomOf="@id/cl_top"
                android:layout_height="100dp"/>

1657177160717

图片是真机通过scrcpy接到电脑的 不是模拟器 是真机调试

  • 提供解决方案(如果已经解决了的话,此项不强制)
    !!! 不是解决方案 但是发现 只需要加上 一点点圆角 哪怕是1dp 阴影就正常了 但是圆角也存在了 还是有些小问题
    image
    通过android studio 预览直接就能看到 黑边 加上1dp的圆角 黑边马上就消失了 可能跟oppo的系统也没多大关系

使用阴影和不使用阴影的view大小不一致

问题描述

  • 框架版本【必填】:8.2

  • 问题描述【必填】:使用阴影和不使用阴影的view大小不一致框架的阴影很方便 但是在开发中遇到一个,比如一个view是宽180dp高200dp UI图上是20dp的阴影宽度 所以我在写布局的时候 高宽各加了 阴影宽度x2 ,但实际效果出来 不用阴影的180dp 200dp画出来的view 比用阴影180dp+ 20x2 200dp+20x2 画出来的要大一些,我想确认在用阴影的时候是不是我这样去计算增加view的高宽,理论上这样计算阴影的view画出来的应该和不带阴影的是一个大小,我指的是不含阴影处

  • 复现步骤【必填】:XXX

  • 是否必现【必填】:是

  • 出现问题的手机信息【必填】:小米10

  • 出现问题的安卓版本【必填】:12

请回答

  • 是部分机型还是所有机型都会出现【必答】:全部

  • 框架最新的版本是否存在这个问题【必答】:是

  • 是否已经查阅框架文档还未能解决的【必答】:是

  • issue 是否有人曾提过类似的问题【必答】:是)

  • 是否可以通过 Demo 来复现该问题【必答】:是

  • 使用原生的 shape.xml 来实现是否也会出现该问题【必答】:否

其他

  • 提供报错堆栈(如果有报错的话必填,注意不要拿被混淆过的代码堆栈上来)

  • 提供截图或视频(根据需要提供,此项不强制)

image
image

  • 提供解决方案(如果已经解决了的话,此项不强制)

ShapeTextview不支持drawable的位置

想要有类似下面的属性

icon_normal_left/right/top/bottom 图标 未选中 各方向
icon_checked_left/right/top/bottom 图标 选中 各方向
类似于Textview有drawLeft一样,你和这个好像不支持

迁移至androidx

建议收集

官方已不再升级和维护support库,gradle.properties 若是不配置android.useAndroidX=true android.enableJetifier=true 则无法使用ShapeTextView等控件

请严格按照 issue 模板来提问题,否则一律不受理

最近发现有很多人给我提 issue 没有认真按照模板上面的来填写,导致了在排查问题的过程中浪费了作者许多不必要的时间和精力,所以请后面提 issue 的人务必严格遵守,否则我不会受理,直接关闭 issue。

设置了背景线性渐变后,阴影效果就会失效了?这是互斥的原因吗?

代码如下
<com.hjq.shape.view.ShapeTextView
android:layout_width="match_parent"
android:layout_height="200dp"
android:layout_margin="10dp"
android:gravity="center"
android:padding="10dp"
android:text="垂直线性渐变"
android:textColor="@android:color/black"
android:textSize="14sp"
app:shape="rectangle"
app:shape_angle="90"
app:shape_endColor="#ffdff8f0"
app:shape_startColor="#fff7fefe"
app:shape_shadowSize="9dp"
app:shape_shadowColor="#50000000"
app:shape_shadowOffsetX="5dp"
app:shape_shadowOffsetY="5dp"
app:shape_topLeftRadius="12dp"
app:shape_topRightRadius="12dp"
app:shape_bottomRightRadius="12dp"
app:shape_bottomLeftRadius="0dp"
/>

使用ShapeRelativeLayout的时候给布局设置宽度为wrap_content minWidth="60dp" 通过代码修改该布局的setStrokeWidth和setStrokeColor 布局宽度会直接撑满

【警告:请务必按照 issue 模板填写,不要抱有侥幸心理,一旦发现 issue 没有按照模板认真填写,一律直接关闭】

问题描述

  • 框架版本【必填】:8.3

  • 问题描述【必填】:使用ShapeRelativeLayout的时候给布局设置宽度为wrap_content minWidth="60dp" 通过代码修改该布局的setStrokeWidth和setStrokeColor 布局宽度会直接撑满

  • 复现步骤【必填】:给ShapeRelativeLayout设置最小宽度 再通过代码修改边框和(注意:目前不受理没有复现步骤的 Bug 单)

  • 是否必现【必填】:填是/否 是

  • 出现问题的手机信息【必填】:请填写出现问题的品牌和机型 小米10u

  • 出现问题的安卓版本【必填】:请填写出现问题的 Android 版本 android 12

请回答

  • 是部分机型还是所有机型都会出现【必答】:部分/全部(例如:某为,某 Android 版本会出现)所有

  • 框架最新的版本是否存在这个问题【必答】:是/否(如果用的是旧版本的话,建议升级看问题是否还存在)是

  • 是否已经查阅框架文档还未能解决的【必答】:是/否(文档会提供最常见的问题解答,可以看看是否有自己想要的)是

  • issue 是否有人曾提过类似的问题【必答】:是/否(看看曾经有人提过类似的问题,先参考一下别人是怎么解决的)否

  • 是否可以通过 Demo 来复现该问题【必答】:是/否(排查一下是不是自己的项目代码写得有问题导致的)是

  • 使用原生的 shape.xml 来实现是否也会出现该问题【必答】:是/否(排查一下是不是框架的代码存在问题导致的)否

其他

  • 提供报错堆栈(如果有报错的话必填,注意不要拿被混淆过的代码堆栈上来)

  • 提供截图或视频(根据需要提供,此项不强制)

a542485497e3867c265e2ca33e68ccb
e686a64a05504fb48be9c5752327ae8

  • 提供解决方案(如果已经解决了的话,此项不强制)

ShapeRecyclerView 使用shape_shadowSize页面错乱

【警告:请务必按照 issue 模板填写,不要抱有侥幸心理,一旦发现 issue 没有按照模板认真填写,一律直接关闭】

问题描述

  • 框架版本【必填】:com.github.getActivity:ShapeView:8.0 8.2 ShapeView-8.3.aar

  • 问题描述【必填】:使用shape_shadowSize页面会错乱, RecyclerView内容超出, 数据量小不明显,稍微多一些会看到内容从最底部滑动上去, 可看视频

  • 复现步骤【必填】:只需要在代码中注释shape_shadowSize即可看到区别

  • 是否必现【必填】:是

  • 出现问题的手机信息【必填】:华为Mate10 Mate30pro

  • 出现问题的安卓版本【必填】:Android10

请回答

  • 是部分机型还是所有机型都会出现【必答】:不确定

  • 框架最新的版本是否存在这个问题【必答】:是

  • 是否已经查阅框架文档还未能解决的【必答】:是

  • issue 是否有人曾提过类似的问题【必答】:否

  • 是否可以通过 Demo 来复现该问题【必答】:是

  • 使用原生的 shape.xml 来实现是否也会出现该问题【必答】:否

其他

  • 提供截图或视频(根据需要提供,此项不强制)
1658568871362207.mp4
1658568867150022.mp4
  • 提供解决方案(如果已经解决了的话,此项不强制)

image

只需要去除app:shape_shadowSize="@dimen/dp_10"即可

增加独立边框线的建议

在开发中,有碰到textView、editView只有底部等单边画上边框线,其它三边不用加,可不可以增加属性来设置左边,右边,上边,下边边框线独立设置有没有,或者不同颜色。

ShapeImageView不能同时设置stroke和shadow

 <com.hjq.shape.view.ShapeImageView
      android:layout_width="86dp"
      android:layout_height="86dp"
      android:layout_gravity="center"
      android:padding="8dp"
      android:src="@drawable/blank_img"
      app:shape_radius="8dp"
      app:shape_solidColor="#1Affffff"
      app:shape_shadowSize="30dp"
      app:shape_shadowColor="#45FFDC78"
      app:shape_strokeColor="#FEDF65"
      app:shape_strokeWidth="2dp" />

这样 stroke就会消失,去掉shadow的配置就能显示stroke。
目前只有单独加了一层ShapeView做的shadow

2.2版本升到3.0版本,没有修改任何配置,效果全没了

image
image

<com.hjq.shape.view.ShapeEditText
android:id="@+id/etEmail"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_marginHorizontal="40dp"
android:gravity="center_vertical"
android:hint="邮箱"
android:inputType="textEmailAddress"
android:paddingHorizontal="10dp"
app:layout_constraintTop_toTopOf="parent"
app:shape_solidColor="#ffffff"
app:shape_strokeColor="#000000"
app:shape_strokeWidth="1dp" />

设置shape_shadowSize圆角和嵌套cardview圆角无效了

问题描述

  • 框架版本【必填】:implementation 'com.github.getActivity:ShapeView:8.3'

  • 问题描述【必填】:ShapeLinearLayout里面放cardview,设置ShapeLinearLayout阴影后,cardview圆角无效了,

  • 是否必现【必填】:是

  • 出现问题的手机信息【必填】:任何

  • 出现问题的安卓版本【必填】:任何

请回答

  • 是部分机型还是所有机型都会出现【必答】:全部

  • 框架最新的版本是否存在这个问题【必答】:是

  • 是否已经查阅框架文档还未能解决的【必答】:是

  • issue 是否有人曾提过类似的问题【必答】:否

  • 是否可以通过 Demo 来复现该问题【必答】:否(

  • 使用原生的 shape.xml 来实现是否也会出现该问题【必答】:否(

image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.