小编mat*_*amp的帖子

扩展AS3的数组访问运算符以"包装"超出范围的索引值

我真的希望能够使Flash的数组访问语法"包裹"在数组的边界上.

冗长的解释 -

var array:Array = ['a','b','c','d','e','f'];
Run Code Online (Sandbox Code Playgroud)

为简单起见,第一个索引为0,其值为第一个字母"a".要获得这个价值,我们会这样做 -

array[0]; // returns 'a'
Run Code Online (Sandbox Code Playgroud)

只要您用于访问数组的索引介于0和array.length之间(在我们的示例中为6),一切正常 - 但如果您使用这些边界之外的索引,则会关闭.

array[-3];
array[9]; // both return 'undefined'
Run Code Online (Sandbox Code Playgroud)

有时候这是一件好事 - 有时候你会发生这种情况,而且你很好.其他时候,你发现自己希望(或者至少我发现自己希望)它表现得更像这样 -

array[-3];
array[9]; // both return 'd'
Run Code Online (Sandbox Code Playgroud)

(例如,当您点击最后一张照片上的"下一个"时,照片库会跳回到开头)

我为此类事件反复使用了一小块代码,但是将索引传递给数组之前总是要改变它:

var index = -3;
while(index < 0){index += array.length}
array[index % array.length]; // returns 'd'
Run Code Online (Sandbox Code Playgroud)

...这很好,但我真正想做的是扩展Array对象本身,以便它自动"包装"超出范围的索引值.

TL; DR - 通过扩展Flash AS3的Array对象可以实现索引包装吗?

arrays flash actionscript actionscript-3

2
推荐指数
1
解决办法
2614
查看次数

找出AS3的XMLList是否包含字符串作为节点值

是否有一个与Array.indexOf等效的XMLList?

例如 -

var array:Array = ['one','two'];
trace(array.indexOf('two')); // returns 1, since it's at the second position
trace(array.indexOf('three')); // returns -1, since it isn't found
Run Code Online (Sandbox Code Playgroud)

... 对?但如果我有这个怎么办 -

var xml:XML = <list><item>one</item><item>two</item><list>
var xmlList:XMLList = list.item;
Run Code Online (Sandbox Code Playgroud)

必须有一种更简单的方法来检查XMLList中的一个节点是否具有特定值而不是循环遍历所有节点,对吧?类似于 -

xmlList.indexOfChildByNodeValue('two'); // returns 1, because it's the second child
xmlList.indexOfChildByNodeValue('three'); // returns -1, because it doesn't match any children
Run Code Online (Sandbox Code Playgroud)

合理?

xml flash e4x indexof actionscript-3

2
推荐指数
1
解决办法
6942
查看次数

AS3 Loader忽略.png透明度

在Flash CS4中,打开一个新文档,将背景颜色更改为可识别的内容(如洋红色)并添加以下代码:

var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, function(e:Event){addChild(e.target.content);});
loader.load(new URLRequest('newsnakelub8.png'));
Run Code Online (Sandbox Code Playgroud)

...用你碰巧得到的任何东西替换.png文件名,我抓住了这个.编译.swf,让我叹为观止 - 通常透明的.png现在有一个白色的背景,不允许闪光背景颜色透过.

是否有一个神奇的'treatAsPNG24'属性,我在某处失踪?

flash png transparency loader actionscript-3

0
推荐指数
1
解决办法
5310
查看次数

在谷歌翻译Android应用程序中访问语言包的文件

谷歌翻译和两种语言(比方说英语和西班牙语)是否可以安装在无法访问互联网的设备上?

获得.apk和侧载谷歌翻译很容易 - 但有没有办法获得离线语言包的副本,以便在安装后在应用程序中使用?唯一的"官方"方式是通过下载,但我希望能够从.apk安装应用程序,然后将一些语言文件复制到一些系统文件夹中,让应用程序识别这些语言在启动时可用起来.

有任何想法吗?

android google-translate

0
推荐指数
1
解决办法
9574
查看次数