如何让重力“底部”在 xml 中的可绘制对象上工作

2024-04-13

我有一个简单的目标。我想要我的 FrameLayout 上有一个浅灰色背景,下面有一条黑色分界线(仅在下面,而不是周围)。到目前为止我有这个:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <shape android:shape="rectangle" android:gravity="center">
            <solid android:color="#EEEEEE" />
        </shape>
    </item>
    <item>
        <shape android:shape="line" android:gravity="bottom" >
            <stroke android:width="1dip" android:color="#010101"/>
        </shape>
    </item>
</layer-list>

但它通过中心画线,即忽略重力=“底部”位。我怎样才能解决这个问题?

编辑:这个问题是very老的。所选答案可能符合也可能不符合当前的 API 等。我们鼓励您提出自己的问题,而不是添加到这个问题,因为该问题不再受到监控。


我也为此经历了很多挣扎。基本上,要在底部创建边框,您必须以与预期相反的方向思考。您从一个带有边框颜色的矩形开始。最重要的是,您绘制实际的颜色,并与底部有一定的偏移。 我用这个:

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

    <!-- CREATE A RECTANGLE WITH YOUR BORDER COLOR -->
    <item>
        <shape android:shape="rectangle" >
            <solid android:color="#fff"/>
        </shape>
    </item>

    <!-- NOW DEFINE THE NORMAL COLOR-->
    <item android:bottom="BOTTOM_BORDER_THICKNESS E.G. 4dp">
        <shape android:shape="rectangle" >
            <solid android:color="#ccc"/>
        </shape>
    </item>
</layer-list>

Or, as 胡安·巴勃罗·萨拉切诺 https://stackoverflow.com/users/1084023/juan-pablo-saraceno建议:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android" > 
    <item> 
        <color android:color="YOUR_BORDER_COLOR" /> 
    </item> 
    <item android:top="YOUR_BORDER_THICKNESS"> 
        <color android:color="YOUR_BG_COLOR" /> 
    </item> 
</layer-list>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何让重力“底部”在 xml 中的可绘制对象上工作 的相关文章

  • 使用 XSLT 将 XML 转换为 SQL

    由于我无法控制的原因 我将获得一个 XML 文件和一个 XSLT 文件 该文件可以将 XML 文件转换为 SQL 代码或错误 现在让我们假设我们可以信任提供 XML 文件的人不会在 XML 中包含危险的构造 我什至不知道是否应该使用 Sim
  • 安卓定位不准确

    我正在尝试获取当前用户的位置 我试图重构我的代码以获得更好的结果 但我只是不断得到关于准确度的荒谬位置 它在 900 600 米之间 如何才能得到更好的结果 使其精度达到50m以内 这是我的代码 package com agam mapsl
  • 使用 ADB 命令获取 IMEI 号码 Android 12

    对于 11 之前的 Android 版本 我使用以下命令从我的设备获取 IMEI 号码 adb shell service call iphonesubinfo 4 cut c 52 66 tr d space or adb shell s
  • 如何在android上的python kivy中关闭应用程序后使服务继续工作

    我希望我的服务在关闭应用程序后继续工作 但我做不到 我听说我应该使用startForeground 但如何在Python中做到这一点呢 应用程序代码 from kivy app import App from kivy uix floatl
  • 如何将 XML 文档嵌入到 XHTML 文档中?

    例如 我如何嵌入
  • Android在排序列表时忽略大小写

    我有一个名为路径的列表 我目前正在使用以下代码对字符串进行排序 java util Collections sort path 这工作正常 它对我的 列表进行排序 但是它以不同的方式处理第一个字母的情况 即它用大写字母对列表进行排序 然后用
  • AudioTrack、SoundPool 或 MediaPlayer,我应该使用哪个?

    如果我需要能够 播放多个音频文件 具有不同的持续时间 例如 5 到 30 秒 独立设置右 左声道的音量 应用声音效果 如混响 失真 那么 我应该使用哪个 API 另外 我在 AudioTrack API 上找不到太多文档 有谁知道在哪里可以
  • 如何检查用户在EditText中输入自己的电话号码?

    用户将在我的 Android 应用程序的注册页面上的编辑文本中输入手机号码 如何检查用户输入的是他 她的手机号码而不是其他人的 我试过这个 TelephonyManager tMgr TelephonyManager mAppContext
  • 获取手机的 z 轴和磁北极(而不是 y 轴)之间的角度

    我知道如何使用 getOrientation 方法获取手机 y 轴和磁北之间的方向角 如此处所述https developer android com guide topics sensors sensors position https
  • 画透明圆,外面填充

    我有一个地图视图 我想在其上画一个圆圈以聚焦于给定区域 但我希望圆圈倒转 也就是说 圆的内部不是被填充 而是透明的 其他所有部分都被填充 请参阅这张图片了解我的意思 http i imgur com zxIMZ png 上半部分显示了我可以
  • 菜单在片段的 onCreateOptionsMenu 处多次膨胀调用

    我使用 Fragments 当我切换到嵌套 Fragment 时 它实现了public void onCreateOptionsMenu Menu menu MenuInflater inflater 当我到达该嵌套片段时 我的菜单会多次膨
  • 使用 PhoneGap 使 Android 应用程序易于访问(对于残障人士)

    有人有过使用 PhoneGap 使 Android 应用程序可访问的经验吗 至少我们需要使我们的应用程序符合第 508 条规定 我尝试实现一些标准的辅助功能 文本框标签 向 div 添加标题属性等 但是 当在 Android 中使用 Tal
  • PhoneStateListener 不调用

    这是我的完整代码 广播示例 java package com example broadcast gt import android app Activity import gt android content Context import
  • HERE 地图:更改路线已行驶部分的颜色

    导航时可以改变路线的颜色吗 具体来说 我希望路线中已行驶的部分的颜色与即将行驶的部分的颜色不同 现在都是同一个颜色 将 MapRoute 对象的 TravelColor 变量设置为透明对我来说很有效 mapRoute color Resou
  • 有关 ListView 自定义行布局项目上的 onClick() 事件的帮助

    我有一个 ListView 其行由我格式化 每行都有 ImageView 和 TextView 的混合 我还实现了自己的适配器 并且能够通过它绘制每一行 现在 我想要这样的东西 用户单击 ImageView 不是行上的其他任何位置 但只有此
  • C# xml序列化必填字段

    我需要将一些字段标记为需要写入 XML 文件 但没有成功 我有一个包含约 30 个属性的配置类 这就是为什么我不能像这样封装所有属性 public string SomeProp get return someProp set if som
  • 使用 JobScheduler API 进行位置更新

    下面是我使用 FireBaseJobDispatcher 启动作业的演示代码 public class MainActivity extends AppCompatActivity Override protected void onCre
  • Android应用程序可以像旧的普通java小程序一样嵌入到网页中吗?

    我对 android 平台一无所知 也无法在互联网上找到这个基本问题的答案 更新 好的 我本身无法嵌入 Android 应用程序 但是我可以在 Android Webbrowser 中嵌入 Java 的东西吗 不可以 您无法将 Androi
  • 如何在片段中实现 onBackPressed() 和意图?

    我知道 onBackPressed 是活动中的一种方法 但是 我想在片段中使用该功能 以便当按下后退按钮时 它会通过 Intent 重定向到另一个活动 有什么办法解决这个问题吗 public class News Events fragme
  • Android 材料芯片组件崩溃应用程序。无法膨胀 xml

    Tried Chip来自两个支持库的组件 com google android support design 28 0 0 rc01和材料 com google android material material 1 0 0 rc01 堆栈

随机推荐

  • 如何在 GitLab CI 中显示来自另一个存储库的测试

    因此 我的项目包含单元测试 当我在 GitLab 中配置 CI 系统后发出合并请求时 它们会很好地显示为绿色或红色圆圈 但现在我也有一些集成测试 它们驻留在单独的存储库中 你为什么问 因为我有多个微服务需要一起测试 并且每个微服务都有自己的
  • vim 定界伴侣

    使用 DelimitMate 它会自动生成右括号 当我在括号内输入完毕后 按什么键可以快速转到右括号的右侧 现在我必须手动按 ESC 然后按 a 这些自动关闭插件 就像 Eclipse 等 IDE 中的原始功能实现一样 的想法是 您只需ty
  • C#:最易读的字符串连接。最佳实践[重复]

    这个问题在这里已经有答案了 可能的重复 我应该如何连接字符串 https stackoverflow com questions 3102806 how should i concatenate strings 在日常任务中 当执行任务时
  • 最小化时窗口内容消失

    我有一个简单的类 当鼠标拖动时画一条线 或者当鼠标按下 释放 时画一个点 当我最小化应用程序然后恢复它时 窗口的内容消失 除了最后一个点 像素 我明白这个方法super paint g 每次窗口更改时都会重新绘制背景 但无论我是否使用它 结
  • WebApi HTTPPOST 端点未命中

    我有以下简单的 HTTPPOST 端点 AllowAnonymous HttpPost Route forgotPassword public IHttpActionResult ForgotPassword string userName
  • 如何暂停 main()

    我正在尝试编写我的程序 以便当用户单击 Drive To JButton 在我的主类 Dispatch 中 时 它会从另一个类 Cab 打开一个 JFrame GoToDistination 用户可以在其中输入所需的内容信息 单击 继续 后
  • 如何仅在 Scrollview/Recyclerview 的底部添加淡入淡出边缘?

    I am using requiresFadingEdge true for adding fading effect at the bottom but the problem is it also shows fading effect
  • 如何将字符串{}值替换为obj(键值)

    我最近开始在 NodeJs 上编程 我有不同的字符串和 Json 对象 eg var str My name is name and my age is age var obj name xyz age 24 var str I live
  • 如何在 XML 模式中使任一字段为必填字段

    我有一个如下所示的架构 我有一些关于该架构的问题 1 制作方法CourierNumber or WorkLocationCoordinate强制性的 我使用了如下所示的一种全局类型 EDIT正如 Abel 在修改后的模式中提到的那样 仍然没
  • '无法在descriptionForLayoutAttribute_layoutItem_coefficient中创建描述。有些东西是零

    首先 我用 3 个不同的 UIView 来替换 iPad Storyboard 上 Split View Controller 中的详细视图 它在 iOS 8 iPad 上运行良好 但是 当我加载详细视图之一时 应用程序在 iOS 7 和
  • 递归可以命名为简单的函数调用吗?

    请考虑递归函数 1 int calc int num 2 sum sum num sum is a global variable 3 num 4 if num 0 5 return sum 6 calc num 它计算一个整数的总和 我的
  • 如何使用 Objective c 在 iOS 9.3 中添加动画到启动屏幕

    如何在 iOS 9 3 中制作如下图所示的动画启动屏幕 基本上 您无法制作动画启动画面 但是 您可以在故事板中复制启动屏幕 并将其作为应用程序的入口视图控制器 VC 然后 当视图加载时 您可以开始动画 最终结果是 您将得到一个 动画启动画面
  • 我的 jframe 不显示 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我是java编程的初学者 我试图让我
  • OCaml 中 let rec 的限制

    这几天我在学习OCaml 发现了这个 OCaml 对于可以放在 let 记录右侧的内容有限制 像这个 let memo rec f norec let rec f memoize fun x gt f norec f x in f Erro
  • C# Windows 应用程序未关闭

    我有一个 C Windows 应用程序 我将其放置在测试服务器上 该服务器的设置不受我的公司控制 安全上下文也不受我的公司控制 我双击exe 应用程序运行 我看到我的表格 我关闭应用程序 打开任务管理器 但仍然看到应用程序的足迹 taskk
  • Node.js:获取客户端的IP

    req connection remoteAddress req headers x forwarded for req ip req ips 这一切意味着什么 有没有一种直接的方法可以简单地获取向我的 Node js Express 站点
  • python 将字符串解析为csv格式

    我有一个包含以下格式的行的文件 aaa A bbb B ccc C 我想将其转换为 csv 格式 以便方程两边的文字将是列 分号将作为行分隔符 我尝试做这样的事情 f open aaa txt r with open ccc csv w a
  • 表达式的不同编译器行为: auto p {make_pointer()};

    以下程序的正确行为是什么 example cpp include
  • Haskell Cabal:神秘的缺失或递归依赖关系

    我尝试安装jmacro包裹 它构建完美 绝对没有任何问题 但是 当我想使用它或安装类似的软件包时happstack jmacro 这取决于 jmacro 我收到如下错误消息
  • 如何让重力“底部”在 xml 中的可绘制对象上工作

    我有一个简单的目标 我想要我的 FrameLayout 上有一个浅灰色背景 下面有一条黑色分界线 仅在下面 而不是周围 到目前为止我有这个