我想要获得CardView的右上角,如下图所示,但我不知道如何操作。它就像一张折叠的纸张(没有动画)。我不知道我是否应该制作可绘制的自定义背景或者如何管理拐角半径以获得期望的结果。任何帮助将不胜感激,谢谢Android CardView - 如何折角
1
A
回答
0
看这里https://developer.android.com/studio/write/draw9patch.html 我认为这是使用自定义布局右击方式。
你可以在xml上绘制它,或者使用9-patch png。
您也可以创建自己的类MyCardView,并从CardView扩展,然后覆盖方法onDraw
并根据需要绘制CardView,但这不是个好主意。
我会建议你使用9-patch image
0
还可以通过编程方式创建这样的绘制这样的:
public static final class FoldCornerCard extends Shape {
private final float foldPart;
private final Path cardPath = new Path();
private final Path foldPath = new Path();
private final Paint foldPaint;
public FoldCornerCard(int foldColor, float foldPart) {
if (foldPart <= 0 || foldPart >= 1) {
throw new IllegalArgumentException("Fold part must be in (0,1)");
}
this.foldPart = foldPart;
this.foldPaint = new Paint();
foldPaint.setAntiAlias(true);
foldPaint.setColor(foldColor);
}
@Override
protected void onResize(float width, float height) {
super.onResize(width, height);
this.cardPath.reset();
final float leftFold = width - width * foldPart;
final float bottomFold = height * foldPart;
cardPath.lineTo(leftFold, 0);
cardPath.lineTo(width, bottomFold);
cardPath.lineTo(width, height);
cardPath.lineTo(0, height);
cardPath.close();
foldPath.reset();
foldPath.moveTo(leftFold, 0);
foldPath.lineTo(leftFold, bottomFold);
foldPath.lineTo(width, bottomFold);
foldPath.close();
}
@Override
public void draw(Canvas canvas, Paint paint) {
canvas.drawPath(cardPath, paint);
canvas.drawPath(foldPath, foldPaint);
}
}
和使用例如:
final ShapeDrawable shapeDrawable = new ShapeDrawable(
new FoldCornerCard(Color.GREEN, 0.1f));
shapeDrawable.getPaint().setColor(Color.WHITE);
shapeDrawable.setIntrinsicHeight(-1);
shapeDrawable.setIntrinsicWidth(-1);
你只需要修改我的片段位添加圆角。
相关问题
- 1. 角落ImgeView适合内CardView没有半径像CardView的角落Android
- 2. Android CardView cardCornerRadius gap
- 3. CardView:图像的边角在Android 4.3中不是圆角的?
- 4. Listview cardview在android
- 5. 删除CardView的圆角
- 6. 如何使用RecyclerView和CardView
- 7. CardView在CardView的设置背景上保留角点半径
- 8. CardView中的圆角底部TextView
- 9. 如何折叠Android通知?
- 10. 如何卷曲/折叠UIView的底角
- 11. 的Android cardView点击回调
- 12. Android中的CardView布局
- 13. Android CardView顶部颜色同时保持圆角
- 14. Android CardView填充和minHeight
- 15. 的Android CardView填充错误
- 16. 如何使CardView通过CardView?请参阅细节
- 17. Android CardView不显示内容
- 18. 在Android棒棒糖CardView
- 19. Android上的Cardview尺寸
- 20. CardView和RecyclerView(是Android 5.0)
- 21. Android的 - 无法实例cardview
- 22. 角材折叠卡
- 23. 如何定义CardView的保证金
- 24. 如何为一些小孩成员设置cardview的拐角半径?
- 25. 如何在android中绘制折线图
- 26. 如何在Android中使用支持库刷卡删除cardview
- 27. android - 如何更新CardView的特定文本视图
- 28. 如何在“完整”cardview中添加纹波效果android
- 29. 如何去下一张卡片点击在CardView项目在Android
- 30. Android:使用RecyclerView和CardView重复项目 - 如何停止重复?