如何创建半椭圆形(弯曲一条线)

2023-12-13

我正在尝试为我的形状创建一个自定义形状NavigationView页脚,作为背景。但不是那么干净。这就是我所做的:

enter image description here

这就是我需要的:

enter image description here

Code:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item
    android:gravity="bottom">
    <shape android:shape="rectangle">
        <solid android:color="@color/darkerGray" />
    </shape>
</item>
<item

    android:gravity="bottom|center_horizontal"
    android:top="50dp">
    <!--android:top="-40dp"-->

    <shape android:shape="oval">
        <solid android:color="#ffffffff" />
    </shape>
</item>
<item

    android:bottom="30dp"
    android:gravity="bottom">
    <shape android:shape="rectangle">
        <solid android:color="#ffffffff" />
    </shape>
</item>

你能帮我吗?


#.更新您的自定义drawableXML如下:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">

    <!-- Container GRAY rectangle -->
    <item>
        <shape android:shape="rectangle">

            <size
                android:width="250dp"
                android:height="100dp" />

            <solid
                android:color="@android:color/darker_gray" />
        </shape>
    </item>

    <!-- Top WHITE oval shape -->
    <item
        android:left="-25dp"
        android:right="-25dp"
        android:top="-50dp"
        android:bottom="50dp">

        <shape android:shape="oval">

            <solid
                android:color="@android:color/white" />
        </shape>
    </item>
</layer-list>

PREVIEW:

enter image description here

#.使用这个习惯drawable在您的布局中如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:gravity="center_horizontal"
    android:background="@android:color/black"
    android:padding="16dp">

    <!-- Custom Footer -->
    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/custom_shape">

    </LinearLayout>
</LinearLayout>

OUTPUT:

enter image description here

希望这会有所帮助~

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何创建半椭圆形(弯曲一条线) 的相关文章

随机推荐

  • 如何使用 PHP 将日期显示为 iso 8601 格式

    我正在尝试使用 PHP 将 MySQL 数据库中的日期时间显示为 iso 8601 格式的字符串 但结果是错误的 2008 年 10 月 17 日的结果为 1969 12 31T18 33 28 06 00 这显然不正确 年份应该是 200
  • Wordpress WPMU 跨多站点网络登录一致性

    我正在进行 WPMU 多站点安装 但遇到了一个小问题 我在主域的注册过程中创建了一个用户 像下面这样的东西 username myname time user id wpmu create user username anypassword
  • 带有条件表达式的 WPF 数据绑定

    我正在使用 MVVM 模式 并且我的视图的数据上下文有一个属性 Customer 现在我想根据 Customer CustomerID 属性的值绑定文本框的 IsEnabled 属性 如果它大于 0 则应启用它 否则应禁用它 我知道我可以轻
  • 如何获取 WPF TreeView 的所有元素作为列表?

    我需要以普通列表的形式访问 TreeView 的节点 就好像所有节点都展开一样 以便能够按 Shift 键进行多重选择 有办法做到这一点吗 Thanks 下面的方法将检索 TreeView 中的所有 TreeViewItems 请注意 这是
  • 为什么@ContributesAndroidInjector不提供Android框架类型

    我已经简化了我的应用程序以找到问题的根源 这是简化的版本 我正在使用以下配置实现 Dagger 2 应用组件 Component modules AndroidSupportInjectionModule class ActivityBin
  • 从 Windows 到 Unix 的 Eclipse CDT .cproject 文件

    我有一个遗留的内部工具 可以使用我用来运行 Simulink 仿真的所有 C 文件创建 Eclipse CDT 项目 我使用 eclipse 项目作为 GDB 的前端 在 Windows 中使用 Cygwin 通过模拟 C 代码进行调试 该
  • 如何在没有java utils的情况下比较两个字符串数组

    检查数组 arr1 是否包含与 java 中 arr2 相同顺序的元素 例如 isTheSame 1 2 3 1 2 3 true isTheSame 1 2 3 2 1 1 false isTheSame 1 2 3 3 1 2 fals
  • 登录后如何重定向?

    我已将用户名和密码绑定到后备托管 bean 在支持 bean 中 当我使用数据库检查用户名和密码时 我想将页面重定向到login xhtml to home xhtml 我怎样才能做到这一点 只需返回附加的视图 IDfaces redire
  • MySQL根据年份自动递增

    我正在创建一个票务系统 这是我的表结构 CREATE TABLE tix sip tktNum INT UNSIGNED NOT NULL sipNum INT UNSIGNED AUTO INCREMENT PRIMARY KEY sip
  • NSManagedObjectModel 版本标识符

    NSManagedObjectModel versionIdentifiers 的文档说 Core Data 框架不为模型提供默认标识符 也不在运行时依赖该值 对于在 Xcode 中创建的模型 您可以在模型检查器中设置此值 我不确定 但我认
  • 即使在 Xamarin 中安装 android v4 支持库后也会出错

    即使从 Xamarin 组件商店安装 v4 支持库后 我也会收到此错误 我尝试用谷歌搜索这些问题 但在开发 Android 应用程序时 我总是在 Xamarin Studio 中遇到相同的错误 This is Xamarin 错误 3249
  • 同时写入 XML 文件

    我有多个进程在不同的机器上运行 需要读取 写入共享的 XML 文件 为此我正在使用DOM with Java and FileLocks 虽然我知道数据库将是一种更有效的方法 但由于项目限制 这是不可行的 为了更改 XML 文件 相关进程首
  • 邻近搜索 谷歌地图

    我正在使用谷歌地图 v3 捕获名为 Locations 的 MS SQL 数据库表中的所有地址 该表将包含 LocationName LocationAddress LocationZip LocationState LocationCit
  • django 形式的多个图像与多重上传

    我需要将 django 形式的多个图像添加到一个模型中 我做了一项研究 对于 django 之外的表单 我尝试设置Django 多重上传 我的模型 py class Profile models Model first models Ima
  • 将数据帧模式加载到元数据表

    用例是读取文件并在其上创建数据框 之后获取该文件的架构并将其存储到数据库表中 例如 我只是创建一个案例类并获取 printschema 但是我无法从中创建数据框 这是示例代码 case class Employee Name String
  • ORA-01027: 尝试使用 if elseif 时不允许绑定变量进行数据定义

    我收到 ORA 01027 数据定义不允许绑定变量 procedure create dates testing dummy variable varchar2 default to char sysdate YYYYMMDD is beg
  • 在 ME49 中打开供应商的报价?

    我想打开编号为 的供应商的报价 175315 在 ME49 事务中 将光标定位在其编号上 在行3 并双击或按键盘上的 F2 键 当我检查 的技术信息175315 or 138992 表明EKKO LIFNR作为屏幕字段 LIFNR作为字段名
  • KERAS 中的自身损失函数

    我如何定义自己的损失函数 它需要 Keras 中先前层的权重和偏差参数 如何从每一层获取 W1 b1 W2 b2 Wout bout 在这里 我们需要传递比平常更多的变量 y true y pred 我附上了两张图片供您参考 我需要实现这个
  • 在GIT中“隐藏”东西

    这里是 Git 菜鸟 我知道这违反了 分布式源代码控制 的原则 但我想 密码保护 我的 GIT 存储库中的某些开发分支 也就是说 我不希望通过以下方式使用该分支git branch r 除了需要通过某种密码访问该分支的特定开发人员组 可能的
  • 如何创建半椭圆形(弯曲一条线)

    我正在尝试为我的形状创建一个自定义形状NavigationView页脚 作为背景 但不是那么干净 这就是我所做的 这就是我需要的 Code