Apache flex 在Flex4.6中创建一个棋盘

Apache flex 在Flex4.6中创建一个棋盘,apache-flex,flash-builder,Apache Flex,Flash Builder,我将在Flash Builder 4.6中启动一个新项目,在选择正确的方向之前需要一些建议 基本上,我在FlashBuilder中的应用程序是针对移动设备和平板电脑的,所以我需要知道如何创建一个棋盘来精确地固定任何设备的宽度。我不知道我怎样才能在Flex中做到这一点 有人能给我一个想法或提供一个我可以使用的例子吗 谢谢。为什么不使用高度和宽度均为100%的瓷砖组合/瓷砖呢?然后将rowHeight设置为{this.height/ROWS}(行是棋盘上有多少行),并对columnWidth执行相同

我将在Flash Builder 4.6中启动一个新项目,在选择正确的方向之前需要一些建议

基本上,我在FlashBuilder中的应用程序是针对移动设备和平板电脑的,所以我需要知道如何创建一个棋盘来精确地固定任何设备的宽度。我不知道我怎样才能在Flex中做到这一点

有人能给我一个想法或提供一个我可以使用的例子吗


谢谢。

为什么不使用高度和宽度均为100%的瓷砖组合/瓷砖呢?然后将rowHeight设置为{this.height/ROWS}(行是棋盘上有多少行),并对columnWidth执行相同的操作。您甚至可以使用horizontalGap和verticalGap属性来显示黑色背景,该背景可以用作每个框之间的分隔符(当然,您必须在计算行高和列宽时考虑这一点)

我将通过AS3填充屏幕,而不是Flex。我就是这么想的

var columnCount:int = 0;
var rowCount:int = 0;
var boxes:int = 64; //however many boxes on a chess board goes here
for ( var i:Number = 0; i < boxes; i+ ){
    var rect:Rect = new Rect();
    var color:SolidColor;
    rect.percentHeight = 100;
    rect.percentWidth = 100;
    rect.name = i.toString(); //this will make it easier to keep track of which box is which later on
    if ( rowCount % 2 == 1 ) {
        if ( i % 2 == 1 ) color = 0x000000;
        else color = 0xffffff;
    }
    else {
        if ( i % 2 == 1 ) color = 0xffffff;
        else color = 0x000000;
    }
    this.rect.fill = color;
    this.tileGroup.addElement(rect);

    if ( columnCount == 7 ) {
        columnCount = 0;
        rowCount++;
    }
    else {
        columnCount++;
    }
}
var columnCount:int=0;
变量行计数:int=0;
变量框:int=64//不管一个棋盘上有多少个盒子都放在这里
对于(变量i:Number=0;i
这完全是我的想法,没有经过测试,所以我肯定有一两个错误,但你知道它将如何工作


编辑:事后想一想,您可能不需要使用rowCount/columnCount变量就可以100%地计算颜色,尽管这样做可能要容易得多。

一般来说;基于应用程序可用的屏幕空间量;只需编写代码来调整屏幕上元素的大小和位置。在Flex组件中,您可以在updateDisplayList()方法中执行大小和位置代码;updateDisplayList()的参数是您的高度和宽度。你有什么特别的问题吗?你试过什么吗?我不清楚你到底想要什么信息。