- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
Android Toast 类提供了获取和设置边距的方法。我很确定他们指的是整个 toast 消息的外边距。由于 Toast 消息漂浮在 UI 上,为什么这些边距是必需的?
我尝试查看 SDK 引用以及搜索 Internet。我找到的最接近解决方案的是一行建议,即 margins 和 offsets 都允许控制 Toast 的定位。为什么我需要两种方法(尽管在概念上不同,因为边距允许根据容器宽度百分比进行指定)来控制 Toast 的定位?
可以肯定的是,这些边距不像其他布局的填充那样工作,是吗?这没有意义,但我想说清楚。
总而言之,我想知道为什么需要边距,边距有什么作用,以及边距和偏移量的用例,即什么时候应该使用边距,什么时候应该使用偏移量,为什么?
更新:
我还没有设法找到任何答案。我尝试过在代码中使用边距与使用偏移量,发现它们似乎提供了两种不同的 Toast 定位范例。设计 Intent (为什么使用两种方法),何时我应该使用一种方法而不是另一种方法(或者至少是其他程序员/UI 设计师发现一种方法比另一种方法更有用的例子),甚至是确切的操作(做边距“居中”它们里面的 toast ?是否对最近的容器边缘应用边距?)这些方法仍然不清楚。
更新 2:
我仔细查看了文档,还查看了 Google 向我指出的 Toast.java 的一些代码。显而易见的是,Toast 包含在一个窗口( Activity 窗口?)中,并且它可能是一个覆盖层。 WindowManager.LayoutParams 类也提供了进一步的线索。我决定更多地使用 Toasts、偏移量和边距,并查看 AOSP 中的代码以获得更清晰的理解。
当我发现更多信息时,我会在这里更新。
最佳答案
我相信边距决定了 toast 出现在屏幕边缘的距离。您还可以调用 setGravity() 来更改它出现在屏幕的哪一侧,然后使用边距来控制它与屏幕一侧的距离。例如:
myToast.setMargin(10, 20);
将创建一个 toast,其在边缘和容器之间具有容器宽度的 10%,在 toast 和容器边缘之间具有容器高度的 20%
要在容器的左上角创建一个 toast,左边距 10 像素,距顶部 20 像素:
myToast.setGravity(Gravity.LEFT| Gravity.TOP, 10, 20)
关于android - Toast 的 margin 值有什么作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21905615/
当我设置 margin-right: 50px;我没有看到任何效果,但是当我替换 margin-right: 50px; 时左边距:50px;或 margin-top: 50px;我确实看到了效果。这
CSS .title{ margin-top: 200px; // does not work! margin-left: 20px; font-weight: bold;
我不知道,但是 li 元素的 margin-top 只有在它大于 h2 元素的 margin-bottom 时才会起作用,我想知道为什么? Test1 Test2 谢谢。 最佳答案 您所描述的听起
我有 2 个 div 的问题 - 两个呈现为 block 的边距均为 15px(顶部 div 有底部边距,底部有顶部),因此我预计两者之间的差距是 30px 而不是 15px,这是正确的假设还是我要疯
我一直以为我了解利润率和负利润率,但显然我不了解!我刚刚开始一个新的设计并且已经遇到了问题。 我有一个 div (hill3Cont) 和另一个嵌套在里面的 div (hill3Hill),这是它们的
我有一系列这样的元素: ... ....... ... ....... h1 上边距为 5px,p 上边距为 10px。但是产生的边距只有 10px。如果我将底部边距增加到 50px,将顶部边距增加
由于 margin-right: auto 和 margin-left: auto 水平居中元素,我希望它们的垂直对应物以相同的方式运行。 但我知道这不会发生,根据 CSS 规范: 10.6.2 In
我在让我的 div 将我的页面向下移动 30 像素/在我的 div 顶部添加边距 30 像素时遇到问题。我的 div 使用 margin auto 在页面中心对齐。 然而,当我尝试添加这行代码时:边距
这个问题在这里已经有了答案: CSS margin terror; Margin adds space outside parent element [duplicate] (7 个答案) 关闭
我有一个 div 在另一个之上。顶部的 div 有 margin-bottom: 10px,底部的 div 有 margin-top: 10px,但两个 div 之间只有 10px 的空间。 实例:h
这个问题在这里已经有了答案: Why does this CSS margin-top style not work? (14 个答案) 关闭 2 年前。 我的 CSS 边距没有按照我想要或期望的方
在此website我正在尝试减少横幅和文本之间ON MOBILE 底部和顶部的边距。 如果您在智能手机和平板电脑上查看,横幅的顶部和底部似乎有一些边距。 这是我的 CSS: .page-id-996
这个问题在这里已经有了答案: Why does this CSS margin-top style not work? (14 个答案) 关闭 3 年前。
这个问题在这里已经有了答案: Why does this CSS margin-top style not work? (14 个答案) 关闭 3 年前。
这个问题在这里已经有了答案: Why does this CSS margin-top style not work? (14 个答案) 关闭 3 年前。
这个问题在这里已经有了答案: Why does this CSS margin-top style not work? (14 个答案) 关闭 3 年前。
这个问题在这里已经有了答案: Why does this CSS margin-top style not work? (14 个答案) 关闭 3 年前。
这个问题在这里已经有了答案: Why does this CSS margin-top style not work? (14 个答案) 关闭 3 年前。
这个问题在这里已经有了答案: Why does this CSS margin-top style not work? (14 个答案) 关闭 3 年前。
这个问题在这里已经有了答案: Why does this CSS margin-top style not work? (14 个答案) 关闭 3 年前。
我是一名优秀的程序员,十分优秀!