我正在尝试学习 QML,目前我在理解 rowSpan 和 columnSpan 方面遇到了一些问题,如果这个问题对你们中的一些人来说可能听起来很愚蠢,那么很抱歉。
我学到的是:
如果我错了,请纠正我,但在GridLayout中应该是这样的:
我正在尝试做什么:
这种布局理论上应该具有以下特点:
或者至少到目前为止我是这么理解的。
问题:
在我用 col、row 以及 colSpan 和 rowSpan 编码 QML 后,我得到了这个。
我的代码:
import …Run Code Online (Sandbox Code Playgroud) 有没有办法在gridlayout中添加元素,将它们水平而不是垂直添加?基本上我想用元素填充整行,然后才开始下一行.
希望我明白我的问题.
正如您已经知道的那样,如果您使用的是767px及以下,则twitter bootstrap会将每个跨度*扩展为100%宽度.因此,例如,如果我们在768px及更高版本上有两列:
<div class="row">
<div class="span6">Column 1</div>
<div class="span6">Column 2</div>
</div>
Run Code Online (Sandbox Code Playgroud)
这是结果:
| column 1 | column 2 | <- desktops
Run Code Online (Sandbox Code Playgroud)
在767px及以下它们将崩溃为:
| column 1 | <- tablets, mobile
| column 2 |
Run Code Online (Sandbox Code Playgroud)
这应该是什么.
但是......如果你想要一行这种行为,而不是另一行,你怎么接近?
如何在767px下留下两列(或更多)列?
<div class="row">
<div class="span6">Column 1</div>
<div class="span6">Column 2</div>
</div>
<div class="special row">
<div class="span6">Column 1</div>
<div class="span6">Column 2</div>
</div>
| column 1 | column 2 | <- desktops
| column 1 | column 2 |
| column 1 | <- tablets, mobile
| column …Run Code Online (Sandbox Code Playgroud) 到目前为止我的代码如下:
\n\nimport javax.swing.JFrame;\nimport javax.swing.JButton;\nimport javax.swing.JPanel;\nimport java.awt.GridLayout;\nimport java.awt.FlowLayout;\n\npublic class GUI extends JFrame\n{\n private JButton button;\n private JPanel panel;\n private static final String[][] key = { { "Esc", "F1", "F2", "F3", "F4", "F5", "F6", "F7", "F8", "F9", "F10", "F11", "F12", "PrtSc", "Insert", "Delete", "Home", "End", "PgUp", "PgDn"}, { "3\\n2", "&", "\xc3\xa9", "\\"", "\'", "(", "\xc2\xa7", "\xc3\xa8", "!", "\xc3\xa7", "\xc3\xa0", ")", "-", "BkSpc", "NumLock", "/", "*", "-" }, { "Tab", "A", "Z", "E", "R", "T", "Y", "U", "I", "O", "P", "^", "$", …Run Code Online (Sandbox Code Playgroud) 我很好奇是否可以使用Grid Layout CSS来创建这样的东西:
************************
* row #1 *
************************
* *
* *
* row #2 *
* *
* *
************************
* row #3 *
************************
Run Code Online (Sandbox Code Playgroud)
因此,网格必须填满整个身高.其他元素也有一些限制:
我有一个例子:3行网格布局.我还可以用绝对的位置都这样,但有没有用,因为我可以自动计算出列#2的利润没有任何必要的js代码.
我主要是一个后端开发人员,但我正试图让布局正确.基本上我正在创建一个列表视图页面,它将div在左侧包含一个标签,其中包含一堆过滤器(下拉列表,复选框等).在屏幕的右侧,我将有一个div包含网格的标签.这似乎有效,但是当我在头顶上或者我的屏幕没有达到最大值时看起来很糟糕.我这样做了吗?基本上这就是我所追求的:

我为此做的CSS就像这样简单:
.filterContainer {
width:20%;
float:left;
}
.gridContainer {
width:79%;
float:right;
}
Run Code Online (Sandbox Code Playgroud)
基本上.filterContainer是我的左div(dLeft),.gridContainer是我的权利div(dRight).这对我想要实现的目标有效吗?结果如下所示:
http://i.imgur.com/WFasMF1.png
但是,如果我调整窗口大小,我最终会得到以下结果:
http://i.imgur.com/4u9HRlK.png
我认为这是正常的,因为我正在调整大小,但我的CSS是否有效?
我有一个网格布局,其中包含7个元素.如果windowScreenWidth小于X,我想将最后4个元素从第一行移动到第二行.我已经添加了一个组和状态.如果我使用<Setter Target="el4.Grid.Row" Value="1"/>或<Setter Target="el4" Property="Grid.Row" Value="1"/>xaml抛出异常.
有没有办法让我想要的东西?
我一直在尝试将视图添加到 gridLayout,我已经完成了,但它们没有按照应有的方式调整到列,我曾尝试使用在 XML 中显示良好但没有成功的相同属性来填充视图。
现在,我正在尝试以编程方式创建视图,但它不起作用,我该如何实现我想要的?
相关代码:
这是我的 GridLayout
<android.support.v7.widget.GridLayout
android:id="@+id/grd_team_a"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="12dp"
android:horizontalSpacing="1dp"
app:columnCount="5"
app:orientation="horizontal">
<TextView
android:id="@+id/txtPlayersNameTi"
android:text="Jugadores"
android:textSize="14sp"
android:paddingTop="5dp"
android:paddingBottom="5dp"
app:layout_columnWeight="2"
app:layout_columnSpan="2"
android:textStyle="bold"/>
<TextView
android:text="Goles"
android:gravity="center_horizontal"
android:paddingRight="5dp"
android:textSize="14sp"
android:paddingTop="5dp"
android:paddingBottom="5dp"
app:layout_columnWeight="1"
app:layout_columnSpan="1"
android:textStyle="bold"/>
<ImageView
android:src="@drawable/ic_yellow_card_match"
android:gravity="center_horizontal"
android:textSize="14sp"
android:paddingTop="5dp"
android:paddingBottom="5dp"
app:layout_columnWeight="1"
app:layout_columnSpan="1"
android:textStyle="bold"/>
<ImageView
android:src="@drawable/ic_red_card_match"
android:gravity="center_horizontal"
android:paddingTop="5dp"
android:paddingBottom="5dp"
app:layout_columnWeight="1"
app:layout_columnSpan="1"
android:textStyle="bold"/>
</android.support.v7.widget.GridLayout>
Run Code Online (Sandbox Code Playgroud)
这是它在 xml 预览中的样子:
这就是它应该如何处理数据:
但是,在添加此代码后:
int i = 2;
loading=false;
GridLayout.Spec col2 = GridLayout.spec(2);
GridLayout.Spec col3 = GridLayout.spec(3);
GridLayout.Spec col4 = GridLayout.spec(4);
GridLayout.Spec colspan2 = GridLayout.spec(0, 1); …Run Code Online (Sandbox Code Playgroud) 我想编写一个函数来生成包含n×n网格坐标的元组列表.
例如:
> genGrid 2
[(0,0),(0,1),(1,0),(1,1)]
> genGrid 3
[(0,0),(0,1),(0,2),(1,0),(1,1),(1,2),(2,0),(2,1),(2,2)]
Run Code Online (Sandbox Code Playgroud)
我知道我可以通过执行以下操作生成对角线:
genDiagonal n = zip [0..] [0..n-1]
Run Code Online (Sandbox Code Playgroud)
我想有一种相当简单的方法可以做到这一点,也许是我对角函数的变体,但是我的空白.
我正在尝试找到一个支持CSS网格系统的框架.到目前为止,Google搜索主题只给了我基于浮点数和Flexbox的框架.它可能是"css grid"这个词,这让Google很难真正找到我想要的东西.
有人找到了他们可以推荐的好框架吗?