我想要獲得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填充和圓角
- 4. CardView:圖像的邊角在Android 4.3中不是圓角的?
- 5. Listview cardview在android
- 6. 刪除CardView的圓角
- 7. 如何在Android中獲取CardView大小?
- 8. 如何使用RecyclerView和CardView
- 9. Android cardview onclick實現
- 10. CardView在CardView的設置背景上保留角點半徑
- 11. 只能在Cardview頂部的角落
- 12. CardView中的圓角底部TextView
- 13. 的Android cardView點擊回調
- 14. Android中的CardView佈局
- 15. 如何捲曲/摺疊UIView的底角
- 16. 如何摺疊Android通知?
- 17. Android CardView填充和minHeight
- 18. 如何使CardView通過CardView?請參閱細節
- 19. CardView如何更改陰影顏色和角度?
- 20. 的Android CardView填充錯誤
- 21. Android Cardview奇怪的行爲
- 22. CardView爲Android不進口
- 23. Android CardView不顯示內容
- 24. CardView在Android不從ConstraintLayout
- 25. Android - CardView內容未顯示
- 26. Android中的Cardview事物
- 27. 在Android棒棒糖CardView
- 28. CardView和RecyclerView(是Android 5.0)
- 29. Android的 - 無法實例cardview
- 30. Android上的Cardview尺寸