小编Vol*_*ort的帖子

何时使用CCSpriteBatchNode?

在Cocos2d我会播放动画.动画大约有12帧,每帧都相当大.事实上,每帧的-hd版本都非常庞大.

无论如何,首先,我使用Zwoptex将所有12帧放入纹理中来创建它.纹理约为2048x2048.

这样我就可以使用该纹理在CCSpriteBatchNode中设置CCSprite的动画.

但我似乎得到了2级记忆警告.

现在我想到了它,我不认为CCSpriteBatchNode应该用于一个精灵.我想这只是想要绘制大量使用相同纹理的精灵才有用.

所以我想知道:我应该逐帧动画精灵(没有巨大的纹理)吗?或者是否可以以不同的方式使用那种巨大的纹理?

objective-c cocos2d-iphone

13
推荐指数
1
解决办法
6268
查看次数

Ruby return语句不适用于super关键字?

class Parent
  def test
    return
  end
end

class Child < Parent
  def test
    super
    p "HOW IS THIS POSSIBLE?!"
  end
end

c = Child.new
c.test
Run Code Online (Sandbox Code Playgroud)

我虽然如此,因为类中的test方法Parent立即使用return语句,所以不应该打印Child类的行.但它确实印刷了.这是为什么?

Ruby 1.8.7,Mac OSX.

ruby

13
推荐指数
2
解决办法
3607
查看次数

如何在Ruby中解密MD5?

可能重复:
是否可以解密md5哈希?

我在Ruby中这样做:

Digest::MD5.hexdigest("Jose")
Run Code Online (Sandbox Code Playgroud)

并得到"70483b6e100c9cebbffcdc62dea07eda"

但是,我如何将其解密回"何塞"?

ruby md5

12
推荐指数
3
解决办法
2万
查看次数

如何拦截Java中的音乐控制键盘快捷键?

如果键盘上有播放/暂停/等按钮(音乐控制快捷键),按下它们,iTunes将打开(至少在Mac上).

如果你最近打开了另一个音乐播放器,比如Spotify,它实际上会截取快捷键,iTunes也不会做任何事情.

好吧,我想制作一个带有Java的音乐播放器,我希望有相同的行为.我希望我的应用程序拦截这样的快捷方式,其他程序不应该干涉.

我正在使用JavaFX,虽然我认为这不重要.

我怎样才能做到这一点?

我已经能够检测到用户使用JNativeHook按下的键,但我不知道如何拦截键,以便其他应用程序不会使用它们.

java keyboard keyboard-shortcuts keyboard-events

11
推荐指数
1
解决办法
268
查看次数

如何在PictureBox控件上显示滚动条?

有时候,我有一个图片盒可以说是100x100.但它显示的图像实际上是100x400.

我不想增加图片框本身的大小.相反,我想创建一个垂直滚动条(或根据需要水平).

我在工具箱中找不到滚动条,所以我想我必须编写它.但是,怎么样?而且我仍然想知道我是否没有犯错并且没有看到工具箱中的滚动条.我道歉:(

vb.net scrollbar picturebox winforms autoscroll

10
推荐指数
2
解决办法
3万
查看次数

如何遍历NSString的字符

NSString *myStrings = @"abcdefghijklmnopqrstuvwxyz";
Run Code Online (Sandbox Code Playgroud)

我怎么能在Objective-C for循环中迭代每个字母(a,b,c,d,e等)?

string objective-c

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

选择随机选项,其中每个选项具有不同的被挑选概率

假设你有三个"选项" A,BC.

您的算法必须选择并返回一个随机的算法.为此,将它们放入数组{A,B,C}并生成随机数(0,1或2)非常简单,该数字将是要返回的数组中元素的索引.

现在,这个算法有一个变化:假设A被选中的几率为40%,B20%和C40%.如果是这种情况,您可以采用类似的方法:生成数组{A,A,B,C,C}并使用随机数(0,1,2,3,4)来选择要返回的元素.

这样可行.但是,我觉得这是非常低效的.想象一下,将此算法用于大量选项.您将创建一个有点大的数组,可能有100个元素,每个元素代表1%.现在,这仍然不是很大,但假设你的算法每秒使用很多次,这可能会很麻烦.


我考虑过创建一个名为class的类Slot,它有两个属性:.value.size.为每个选项创建一个插槽,其中.value属性是选项的值,并且该插槽.size等于数组中此类选项的出现次数.然后生成一个从0到总发生次数的随机数,并检查该数字落在哪个插槽上.

我更关心算法,但这是我对此的Ruby尝试:

class Slot
  attr_accessor :value
  attr_accessor :size
  def initialize(value,size)
    @value = value
    @size  = size
  end
end

def picker(options)
  slots = []
  totalSize = 0
  options.each do |value,size|
    slots << Slot.new(value,size)
    totalSize += size
  end
  pick = rand(totalSize)
  currentStack = 0
  slots.each do |slot|
    if (pick <= …
Run Code Online (Sandbox Code Playgroud)

ruby random algorithm

10
推荐指数
3
解决办法
5829
查看次数

如何使用libGDX更改Scene2D图像中的纹理?

如何更改Scene2D图像中的纹理?

http://libgdx.badlogicgames.com/nightlies/docs/api/com/badlogic/gdx/scenes/scene2d/ui/Image.html

文档中没有这样的方法.我通过为其构造函数提供纹理引用来创建我的.

libgdx

10
推荐指数
1
解决办法
7868
查看次数

在Android的运行时执行嵌入Java的Groovy脚本

从版本2.4开始,Groovy支持Android.我想在我的Android应用程序中运行嵌入Java的Groovy脚本.

本网站解释说这是可能的:http://melix.github.io/blog/2014/06/grooid2.html

适应Groovy语言的困难之一是,正如我们所说,Groovy是一种高度动态的语言.它的一个功能是在运行时执行脚本.那么如果我们想在设备上键入Groovy脚本并直接在其上执行呢?可能吗?事实上,是的,有可能,因为你遵循这个过程:

您可以拥有一个用Groovy编写的应用程序,但最终,一旦应用程序运行,您就拥有了要执行的Groovy源代码.然后它需要编译类,直接在设备上调用dex,将结果打包到本地文件系统上的jar文件中,然后使用特殊的类加载器加载它.那么为什么这是可能的,这个过程非常复杂,不是直截了当的,但更重要的是,它非常缓慢.

我很兴奋,无论速度如何,这确实是可能的.这里有一个示例项目:https://github.com/melix/grooidshell-example.

不幸的是,我真的不明白这个过程.我有一个相当小的项目,但我不确定在哪里看.

你能指出我在Android的运行时执行嵌入Java的Groovy脚本的正确方向吗?

java groovy android

10
推荐指数
1
解决办法
1270
查看次数

移动鼠标无法取消JavaFX MenuItem

在此输入图像描述

如果按住鼠标单击其中一个MenuItems,然后鼠标开,该按钮将保持选中状态.即使将鼠标拖动到NewSave,该Open按钮仍将保持选中状态.如果在外面的任何地方释放鼠标Open,该命令仍将执行.为了话,你握着鼠标按下的那一刻,这是即将发生OpenonAction()将被调用.

这与Mac OSX中的正常行为不同,我想是Windows本机应用程序.在它们中,即使您按住MenuItem上的单击,如果您将鼠标移开,该按钮也不会触发.但它确实发生在JavaFX上.

我该怎么做才能解决这个问题?JavaFX 8.

java javafx

10
推荐指数
1
解决办法
516
查看次数