小编MrH*_*hma的帖子

使UITextView可滚动

这看起来很愚蠢,但我检查了所有我发现的类似问题的"解决方案",但没有什么工作.我有一个UITextView框,我想要滚动,我的设置如下.有谁知道为什么它不让我滚动?

可滚动失败

iphone xcode interface-builder uitextview ipad

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

Lua - 两个具有相同名称的局部变量

我一直在学习Lua,我想知道是否允许引用两个同名的局部变量.

例如,在以下代码段中,语法是否合法(没有未定义的行为)?

我问,因为它确实运行,但我似乎无法弄清楚幕后发生了什么.这只是引用相同的x本地?或者现在有两个local x变量在幕后混乱了.我想知道这里到底发生了什么,为什么会这样.

local x = 5 + 3; -- = 8
local x = 3 - 2; -- = 1

print("x = " .. x); -- x = 1
Run Code Online (Sandbox Code Playgroud)

variables lua undefined-behavior

5
推荐指数
3
解决办法
1211
查看次数

iOS SoundTouch框架BPM检测示例

我在网上搜索过,无法找到有关如何使用SoundTouch库进行节拍检测的教程.

(注意:在此之前我没有C++经验.我确实知道C,Objective-C和Java.所以我可能搞砸了一些,但它编译了.)

我将框架添加到我的项目中并设法获得以下内容进行编译:

NSString *path = [[NSBundle mainBundle] pathForResource:@"song" ofType:@"wav"];

NSData *data = [NSData dataWithContentsOfFile:path];

player =[[AVAudioPlayer alloc] initWithData:data error:NULL];

player.volume = 1.0;

player.delegate = self;

[player prepareToPlay];
[player play];

NSUInteger len = [player.data length]; // Get the length of the data

soundtouch::SAMPLETYPE sampleBuffer[len]; // Create buffer array

[player.data getBytes:sampleBuffer length:len]; // Copy the bytes into the buffer

soundtouch::BPMDetect *BPM = new soundtouch::BPMDetect(player.numberOfChannels, [[player.settings valueForKey:@"AVSampleRateKey"] longValue]); // This is working (tested)

BPM->inputSamples(sampleBuffer, len); // Send the …
Run Code Online (Sandbox Code Playgroud)

audio objective-c++ soundtouch ios

5
推荐指数
1
解决办法
7070
查看次数

逗号分隔 print()

希望这不是一个愚蠢的问题,但我在偶然发现这个问题后一直在四处寻找,但找不到任何有记录的地方。语句,中逗号()有什么用?print()它似乎与输入之间的选项卡连接起来。

例子:

print("this" .. "is" .. "string" .. "concatenation");
print("how", "is", "this", "also", "working?");
Run Code Online (Sandbox Code Playgroud)

输出:

thisisstringconcatenation 

how is  this    also    working?
Run Code Online (Sandbox Code Playgroud)

我之所以费心去研究这个,是因为它似乎允许nil值的串联。

示例2:

local nilValues = nil;

print("This", "somehow", "seems", "to", "concatenate", nilValues);
print("This" .. "will" .. "crash" .. "on" .. nilValues); -- ERROR -> attempt to concatenate local 'nilValues' (a nil value)
Run Code Online (Sandbox Code Playgroud)

输出2:

This    somehow seems   to  concatenate nil

Error: lua: test.lua:7: attempt to concatenate local 'nilValues' (a nil
value)
Run Code Online (Sandbox Code Playgroud)

我尝试搜索字符串连接中逗号的用法,并检查了Lua 指南 …

syntax null lua

4
推荐指数
1
解决办法
1027
查看次数

Lua Alien - Win32 API WaitForSingleObject 函数中定义的变量

我使用Alien for Lua来引用WaitForSingleObject 函数Windows Kernel32.dll 中。

我对 Windows 编程很陌生,所以我的问题是关于WaitForSingleObject 文档引用的以下#define d 变量:

如果 dwMilliseconds 是INFINITE,则该函数将仅在对象收到信号时返回。

什么是无限值?我自然会假设它是-1,但我找不到在任何地方记录的。

此外,在下表中,它提到了十六进制的返回值,但我很困惑为什么它们L在最后一位数字后面有一个字符。这会像将其转换为 Long 一样简单吗?

图表

我问的原因是因为 Lua 使用Number 数据类型,所以我不确定是否应该通过十六进制数字 (0-F) 或十进制数字 (0-9) 检查这个返回值?

winapi lua lua-alien

4
推荐指数
1
解决办法
976
查看次数

创建 DLL 以在两个进程之间共享内存

我需要使用 DLL 来实现类似于 Linux 共享内存的功能。我的Windows编程经验很少,但我认为有可能实现我的目标。我想要类似下面的东西:

DLL

int x;

void write(int temp)
{
  x = temp
}

int read()
{
 return x;
}
Run Code Online (Sandbox Code Playgroud)

流程一:

LoadDLL();
write(5); //int x = 5 now
Run Code Online (Sandbox Code Playgroud)

流程2:

LoadDLL();
printf(read()); //prints 5 since int x = 5 from Proccess 1
Run Code Online (Sandbox Code Playgroud)

当然,这个例子忽略了竞争条件等,但是有没有一种简单的方法来处理这样的事情呢?

我将使用 Microsoft Visual Studio 10 来创建 DLL。有人可以解释一下我如何编写这么简单的东西并将其构建到一个可以加载和调用的 DLL 中,类似于上面的伪代码吗?

编辑:共享内存段和内存映射文件无法使用,因为我正在创建的进程是在LabVIEW和Lua中,它们不支持上述内容。然而,它们确实支持 DLL,这就是我需要这种“过时”方法的原因。

c windows dll

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

iPhone上的NSData writeToFile

我认为错误与路径有关,但是我在线上获得了Mac App的代码(稍加修改),并且工作正常.它写入client_state.xml(在build文件夹中).但是在我的基于iphone导航的应用程序上,它编译并运行良好.如果我NSLog在数据或文档中得到相应的信息,我就无法在.xml任何地方找到该文件.

//doc_client is a DDXMLDocument file from kissXML.  The XMLData message returns the NSData
//from the document
NSData *xmlD = [doc_client XMLData];
[xmlD writeToFile:@"client_state.xml" atomically:YES];
Run Code Online (Sandbox Code Playgroud)

iphone objective-c nsdata ios writetofile

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

在实际代码中获取Xcode Project的名称

所以你知道项目的一部分是"MyNameGoesHere.app"或"MyNameGoesHere.xcodeproj" - 有没有办法通过objective-c代码获取MyNameGoesHere部分?

我可以从UIDevice消息中获取所有类型的设备信息,但我无法弄清楚如何获取项目/应用程序名称.

iphone xcode objective-c ipad

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

Xcode 4.2重置默认布局

我不知道我做了什么,但我的观点完全搞砸了.它现在一次只显示一个窗口(例如:仅编辑器),无论我在顶部的"视图"面板上更改了什么设置,似乎都没有任何帮助.有没有办法将Xcode 4.2恢复为默认布局?

layout xcode window xcode4.2

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

目标C - 科学记数法"字符串"成双重

我正在阅读一个包含大量值的文本文件:1.36E-08

有没有办法"解析"(我认为这就是我需要的这个词)这个值变成了双重?如果我直接指定它,它给我0.

//this NSLogs out "0.00000"
double x = 1.36E-08;
Run Code Online (Sandbox Code Playgroud)

iphone double parsing objective-c nslog

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

目标C - 矩阵乘法慢性能

我有2个2-D NSMutableArrays,我正在尝试做一些基本的矩阵乘法.我的通用公式代码如下,但其性能异常缓慢(正如预期的那样).我已经做了很多谷歌搜索,并没有找到任何简单易懂的公式来改变性能增强的代码.任何人都可以指出我在一个简单的公式/教程/示例的正确方向,如何在目标C中使用矩阵乘法获得比0(n ^ 3)更好的性能.

+ (NSMutableArray*)multiply:(NSMutableArray*)a1 withArray:(NSMutableArray*)a2
{
    if([[a1 objectAtIndex: 0] count] != [a2 count])
    {
        NSLog(@"Multiplicaton error!");
        return NULL;
    }

    int a1_rowNum = [a1 count];
    int a2_rowNum = [a2 count];
    int a2_colNum = [[a2 objectAtIndex:0] count];
    NSMutableArray *result = [NSMutableArray arrayWithCapacity:a1_rowNum];
    for (int i = 0; i < a1_rowNum; i++) {
        NSMutableArray *tempRow = [NSMutableArray arrayWithCapacity:a2_colNum];
        for (int j = 0; j < a2_colNum; j++) {
            double tempTotal = 0;
            for (int k = 0; k < a2_rowNum; k++) …
Run Code Online (Sandbox Code Playgroud)

objective-c matrix multiplication nsmutablearray matrix-multiplication

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

用于NSNumber列表的NSArray或NSMutableArray

好的,所以我想做这样的事情:

int array[] = {1, 2, 3, 4, 5};
Run Code Online (Sandbox Code Playgroud)

如果我想使用NSArray和NSNumbers而不是整数,我该怎么做呢?

**注意:

我不想要类似的东西

NSMutableArray *array = [[NSMutableArray alloc] init];
[array addObject: ];
Run Code Online (Sandbox Code Playgroud)

我需要能够将它们全部放在以逗号分隔的单个集合中.(很奇怪,但它使我的程序更容易处理这种格式.我正在模仿一些java代码,在那里做了很多,所以它更容易遵循教程.)

arrays xcode objective-c nsnumber nsarray

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

MATLAB将两个.fig文件复制到一个图中

经过多次搜索,我发现了很多类似的问题,但是我仍然无法通过copyobj()来复制特定的子对象/句柄.

(注意:我对MATLAB图形很新,所以我的术语/对数字/句柄的理解可能是错误的.请随意解决这个问题!)

基本上每个其他示例似乎copyobj()allchild()一起使用.问题源于一些子对象覆盖图例/标题/等以及实际行.

例如,使用两个虚拟图表获取以下代码:

f = figure;
plot(1:10);
title('plot 1');

f2 = figure;
plot(fliplr(1:10));
title('plot 2');
Run Code Online (Sandbox Code Playgroud)

这将产生以下图:

情节1

如果我遵循这个建议allchild(),我的第一个情节就变成了我的第二个情节.我想要绘制两条线.您还会注意到,旧的"Plot 1"标题现在显示两个标题的碰撞被复制到另一个之上:

copyobj(allchild(f2),f);
Run Code Online (Sandbox Code Playgroud)

情节碰撞

因此,经过更多的研究,我认为我可以提取"Line"子代替所有子句柄,并将其添加到我的第一个绘图中.这会导致错误:

copyobj(findobj(f2, 'Type', 'line'), f);
Run Code Online (Sandbox Code Playgroud)

引发以下错误:

??? Error using ==> copyobj
Object line[1] can not be a child of parent
figure[1]
Run Code Online (Sandbox Code Playgroud)

我的最终目标是这样的(在MS Paint中完成的插图.请忽略丑陋):

目标情节

matlab plot copy

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