- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有 7 英寸平板电脑和 10 英寸平板电脑的限定符,分别是 sw600dp 和 sw720dp。我不明白这些数字是如何得出的。
我想为屏幕尺寸小于 4 英寸的手机创建一个新布局。请解释一下我应该如何使用最小宽度限定符来做到这一点。
最佳答案
请结帐"Configuration example"首先是官方文档部分。它很好地解释了使用什么以及何时使用。在您的情况下,没有限定符的默认布局文件夹用于手机。
什么是最小宽度限定符?最小宽度为
The fundamental size of a screen, as indicated by the shortest dimension of the available screen area. Specifically, the device's smallestWidth is the shortest of the screen's available height and width (you may also think of it as the "smallest possible width" for the screen).
例如,您的手机屏幕尺寸为 480x800 dp。此设备的最小宽度将是这两个值中的最小值,即 480dp。如果您旋转设备,最小值将保持不变 - 480dp。
如何使用最小宽度限定符?当你创建一个布局时,你总是期望有一个最小宽度,有了它看起来会很好。低于此最小值,您的布局会被挤压并且看起来不太好。为了确保这不会发生在它身上,你把它放在带有 sw<N>dp
的文件夹中。限定符,当 N 为最小允许宽度时。
值得一提的是,因为最小宽度不依赖于方向,您应该使用 land
自行处理横向和纵向方向。或 port
预选赛。尽管这种方法可行,但处理不同的宽度和方向很快就会变得复杂。为了解决这个问题,还有另一种方法称为响应式移动设计。我建议阅读系列文章"Deep dive into responsive mobile design"以便更好地理解。
更新:
从px计算dp的公式如下:
dp = px / (ppi / 160dp)
Nexus 7 取sw-600dp,因为所有的计算都是基于getResources().getDisplayMetrics().density
在设备中编码的值。这不是实际值,而是四舍五入的值。对于 Nexus 7 (2013),实际值为 323/160 = 2.01875。设备中编码的值为2,对应sw-600dp。这是一些像素丢失的地方。
关于android - 创建一个新的 sw<xxx>dp 限定符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21214274/
我一直在使用 OpenGL 编写程序。最近,我开始学习OpenGL着色语言。我是新手;因此,请在回答中详细说明。 我的问题是: GLSL 中有哪些不同类型的变量(限定符)? 它们的用途是什么? 它们有
这个问题在这里已经有了答案: typedef pointer const weirdness (6 个答案) 关闭 8 年前。 我有一个结构体 type_s。然后我将指向 struct type_s
我有一个 Point2D 类如下: class Point2D{ int x; int y; public: Point2D(int inX,
当应用于指向指针的指针等时,我在推断什么是 const 时遇到了一些麻烦。即,什么是 const 当你有 const Foo **foo; 我可以在这里更改 **foo 中的内容吗?如 foo[0]
限定符 有时候不知道要匹配多少字符。为了能适应这种不确定性,正则表达式支持限定符的概念。这些限定符可以指定正则表达式的一个给定组件必须要出现多少次才能满足匹配。 下表给出了各种限定符及其含义的说
我有一个包含字符名称的数组结构。我想使用 qsort 按字母顺序对它们进行排序,但是我一直收到一条错误消息,说“初始化丢弃了指针目标类型中的‘const’限定符”。我相信我的 cmpmi() 函数和
我是 Java EE/JSF 的新手,现在阅读 CDI 限定符 - 更改类实现的可能性。这很好,但我有一个问题。据我了解,我可以使用限定符更改类实现,但我需要在使用此实现的任何地方更改它。在一个地方进
假设我有以下目录结构: $ mkdir -p a/1 $ ln -s a b 查找目录,我也得到了符号链接(symbolic link)中的目录: $ print -l */*(/) a/1 b/1
我正在尝试创建一个 const 结构数组,但我不断得到 error initializer element is not a compile time constant 我使用的是keil IDE。这
#include using namespace std; class Point { private: int x, y; // Private data members public:
我想使一个方法有条件地成为常量。也就是说,我们有 template class A { // stuff }; 根据模板参数的值,要么 void method() const; 或 void
由于 const int 特化导致以下错误: #include using std::cout; using std::endl; template void g(T val) { cou
同时适用于移动设备和平板电脑的 Titanium 项目,完美地完成了移动版本,但在平板设计时面临一些复杂性。 下面是 Titanium 支持的限定符矩阵,但我找不到任何针对 Android-Table
我正在研究 C++ 和 gtkmm,试图创建一个自定义类,它调用 .glade 文件来构建一个 Gtk 而不是基本的界面。此类派生自 Gtk::Window,但是当我调用类本身的 get_widget
我编写了以下代码来测试 const 成员函数:当我有数据成员的 const 限定符时,它编译并运行良好char *data 和构造函数的参数。但是,如果我从中删除 const数据成员和构造函数,我得到
您好,我正在使用 C++ 内置算法。我这里有这段代码: #include #include #include using namespace std; bool isDon(string& na
我的问题与 Time 项目有关,我将在下面完整发布该项目以提供背景信息。我所做的大部分都是正确的,但是当涉及到加法和减法运算符定义时,我遇到了范围界定错误的问题。编译器找不到我的私有(private)
我有以下代码- int acb(const uint16 *MsgPtr) { uint16 *p = (MsgPtr + 1); printf("%d", *p); } 我收到以下警告 - 在为 p
我在结构中有一个指向结构实例链表的指针字段。 struct myStruct { some fields... struct list_objects * volatile list;
所以我在维基百科的一篇文章(粗略翻译)中遇到了以下定义: Modifier (programming) - element of source code being a phrase of given
我是一名优秀的程序员,十分优秀!