【问题标题】:Is it possible to adjust left hand side height of cardview?是否可以调整cardview的左侧高度?
【发布时间】:2020-03-30 07:26:00
【问题描述】:

我有一个与屏幕顶部对齐的 CardView。在 CardView 内部,有一个 ImageView,我只想调整 CardView 右侧的高度,如下图所示。这可能吗?

  <androidx.cardview.widget.CardView
  android:layout_width="0dp"
  android:layout_height="0dp"
  app:layout_constraintWidth_percent="1"
  app:layout_constraintHeight_percent="0.4"
  app:layout_constraintEnd_toEndOf="parent"
  app:layout_constraintStart_toStartOf="parent"
  app:layout_constraintTop_toTopOf="parent"
  app:cardElevation="10dp"
  app:cardCornerRadius="0dp">
    <ImageView
       android:id="@+id/bngCover"
       android:layout_width="match_parent"
       android:layout_height="match_parent"
       app:srcCompat="@drawable/explore2"
       android:scaleType="centerCrop"/>
</androidx.cardview.widget.CardView>

【问题讨论】:

    标签: android user-interface imageview cardview


    【解决方案1】:

    除了半径之外,CardViews 通常是矩形的;因此,这不能通过 CardView 轻松实现

    最好的建议是创建自己的资源文件。通过这种方式,您可以定义您希望视图的外观并仍然为其提供所需的属性(高度、半径等)。

    要了解如何创建可绘制资源文件,请查看this tutorial。您还可以阅读有关 ShapeDrawables here 的 Android 文档。

    【讨论】:

      【解决方案2】:

      CardView 没有仅在侧面高度上更改的属性。在这种情况下,您必须改为创建自定义梯形,如下所示:

      How to build trapezoid shape in xml android?

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-02-16
        • 2018-12-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多