android - ?selectableItemBackgroundBorderless 不工作

标签 android layout view

我正在尝试实现一个使用 Android 的默认 itemBackground 样式的 View (但具有椭圆形背景,用于操作栏项目等)。不知何故,下面的 View 根本没有显示背景。如果我将 android:background 更改为 android:foreground 它只显示矩形而不是椭圆形。有人知道如何解决这个问题吗?

<LinearLayout
    app:visibleGone="@{showProfile}"
    android:layout_width="wrap_content"
    android:layout_height="26dp"
    android:layout_alignParentStart="true"
    android:gravity="center"
    android:paddingStart="16dp"
    android:paddingEnd="16dp">

       <ImageView
            android:background="?selectableItemBackgroundBorderless"
            android:layout_width="24dp"
            android:layout_height="24dp"
            android:onClick="@{() -> profileCallback.onClick()}"
            android:src="@drawable/profile_image" />

</LinearLayout>

最佳答案

您的代码是正确的,但棘手的是父布局也需要背景。

尝试将 android:background="@android:color/transparent" 或任何其他背景设置为其父背景。在您的例子中,它是 LinearLayout。

关于android - ?selectableItemBackgroundBorderless 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45513451/

相关文章:

android - Volley 返回403错误

html - 如何防止网页布局被破坏

android - 如何在左右侧 View 上创建阴影?

sql-server - 使用 SqlServer View 有哪些缺点?

ios - View 内部的 TableView , View Controller 内部。最好的方法是什么?

java - 如何修复 'android.os.NetworkOnMainThreadException' ?

android - 为什么view中layout_weight的效果和TextView的表现不一样?

android - setOnClickListener 在 Android WebView 上没有响应

android - TextWatcher afterTextChanged 导致 android 中的 stackoverflow

css - Polymer - 带有 NEON 动画页面的全屏布局