小编Ale*_*lds的帖子

如何控制UISearchDisplayController自己的表视图?

在我的应用程序中,当我没有过滤我的桌子时,当我点击一个单元格时,它的框架高度会增加,以显示UIProgressView显示下载进度的内容.

但是,当我使用a过滤获取的结果控制器数据时UISearchDisplayController,此过滤表视图中的单元格的行为方式不同.

相反,单元格不会调整大小,不显示进度视图,不会触发下载,应用程序随后崩溃.

如何控制过滤结果时显示的表格视图UISearchDisplayController

编辑

这是我的-tableView:didSelectRowAtIndexPath:方法.它有点长,但要点是它在我不搜索时工作正常.

我想我需要以某种方式调整它,以便它可以使用搜索结果控制器在此处抛出的任何表视图/获取结果控制器.

- (void) tableView:(UITableView *)tv didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    [tv deselectRowAtIndexPath:indexPath animated:YES];

    if ([self.searchBar isFirstResponder])
        [self.searchBar resignFirstResponder];

    MyObject *_myObject = (MyObject *)[self.fetchedResultsController objectAtIndexPath:indexPath];

    if (self.isSimulatingFileHierarchy) 
    {   
        if ([_myObject isFolder]) 
        {
            ObjectsViewController *_objectsViewController = [[ObjectsViewController alloc] initWithNibName:@"ObjectsViewController" bundle:nil];
            _objectsViewController.managedObjectContext = self.managedObjectContext;
            _objectsViewController.nodeID = self.nodeID;
            _objectsViewController.nodeName = self.nodeName;
            _objectsViewController.parentObjectKey = [_myObject cleanedKey];

            if (self.parentObjectKey)
                _objectsViewController.title = [[_myObject cleanedKey] stringByTrimmingPrefix:[self.parentObjectKey stringByAppendingString:@"/"]];
            else 
                _objectsViewController.title = [_myObject cleanedKey];

            [self.navigationController pushViewController:_objectsViewController animated:YES];
            UIBarButtonItem …
Run Code Online (Sandbox Code Playgroud)

iphone uitableview uisearchdisplaycontroller nsfetchedresultscontroller

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

如何听取双击jstree?

如何在jstree对象上为双击事件编写侦听器?(例如,我想双击树节点并将其锚点的href值粘贴到某个input表单中的字段中.)

javascript jquery events double-click jstree

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

如何编写可以分辨英特尔OS X和Linux之间差异的Makefile?

如何在GNU makeMakefile中编写一个条件,它可以识别架构(在这种情况下是Intel OS X vs Linux),这样我就可以适当地设置标志,而不需要最终用户在运行时指定Makefile make -f

编辑

我应该指定我从ifeq包含shell命令的语句中获取makefile错误,如果此条件位于目标之外:

'commands commence before first target. Stop.'

linux macos makefile gnu-make

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

链接问题与"多重定义"编译错误

我有以下"常量"标题:

/* constants.h */

#ifdef __cplusplus 
extern "C" {
#endif

#pragma once

#ifndef CONSTANTS_H
#define CONSTANTS_H

const char * kFoo = "foo";
const char * kBar = "bar";

#endif

#ifdef __cplusplus
}
#endif
Run Code Online (Sandbox Code Playgroud)

我是#include在文件中的这个标题X.cY.c.

请注意,我没有将此包含在X.h或中Y.h.

这些文件X.cY.c编译到被归档到一个名为静态库的目标文件libXY.a.

当我包含X.hY.hZ.h,当我链接到libXY.a,我无法编译Z.c没有错误:

/* Z.h */

#include "X.h"
#include "Y.h"
Run Code Online (Sandbox Code Playgroud)

尝试编译时出现以下编译错误Z.c:

/path/to/libXY.a(X.o):(.data+0x0): multiple definition of `kFoo` …
Run Code Online (Sandbox Code Playgroud)

c header definition

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

在64位环境中编译32位OS X二进制文件

在64位命令行环境中编译32位Intel OS X二进制文件涉及什么?它是否像添加-m32标志一样简单?我没有使用Xcode,但可以使用它来安装gcc可以使用的库,如果需要的话.谢谢你的建议.

macos 64-bit gcc 32-bit compilation

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

字节反向AB CD到CD AB与python

我有一个.bin文件,我想简单地反转十六进制数据.比如说@ 0x10它读取AD DE DE C0,想要它读取DE AD C0 DE.

我知道有一个简单的方法可以做到这一点,但我是初学者,只是学习python,我正在尝试制作一些简单的程序来帮助我完成日常任务.我想以这种方式转换整个文件,而不仅仅是0x10.

我将在起始偏移量0x000000处进行转换,并且blocksize/length为1000000.

这是我的代码,也许你可以告诉我该怎么做.我相信我只是没有得到它,我是编程和python的新手.如果你能帮助我,我会非常感激.

def main():
    infile = open("file.bin", "rb")
    new_pos = int("0x000000", 16)
    chunk = int("1000000", 16)
    data = infile.read(chunk)
    reverse(data)

def reverse(data):
    output(data)

def output(data):
    with open("reversed", "wb") as outfile:
        outfile.write(data)

main()
Run Code Online (Sandbox Code Playgroud)

并且您可以看到用于反转的模块,我已经尝试了许多不同的建议,它将通过未触摸传递文件,否则将抛出错误.我知道模块反向现在是空的,但我已经尝试了各种各样的东西.我只需要模块反转将AB CD转换为CD AB.感谢任何输入

编辑:文件是16 MB,我想颠倒整个文件的字节顺序.

python byte reversing

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

Python iter() 中的 b'' 哨兵是什么意思?

假设我有一个返回一堆行的进程,我想遍历这些行:

import subprocess

myCmd = ['foo', '--bar', '--baz']
myProcess = subprocess.Popen(myCmd, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
for myLine in iter(myProcess.stdout.readline, b''):
    print myLine
Run Code Online (Sandbox Code Playgroud)

iter()在这个例子中,哨兵参数要做什么,我将值传递给它b''?我想我自己理解''——我不再在空行上迭代——但我不知道是什么b''意思。

python

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

SHA1哈希是否均匀分布?

我在Python中有一个字符串。我用计算该字符串的SHA1哈希hashlib。我将其转换为十六进制表示形式,并使用最后16个字符作为标识符:

hash_str = "foobarbaz?????????????..."
hash_obj = hashlib.sha1(hash_str, encode('utf-8'))
hash_id  = hash_obj.hexdigest()[:16]
Run Code Online (Sandbox Code Playgroud)

我的目标是提供一个合理的长度并且不太可能hash_id针对不同的hash_str输入产生相同的值的标识符。

如果SHA1发生碰撞的概率为1 /(2 ^ 160)或1 /(16 ^ 40),则如果我采用十六进制表示的最后十六个字符,则发生碰撞的概率仅为1 /(16 ^ 16)?还是字节(或其等效的十六进制)分布不均?

hash sha1 probability

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

使用ImageMagick将SVG转换为PDF并选择可靠的字体?

我有一个简单的测试SVG,使用两个安装的字体(Helvetica-NarrowHelvetica-Bold):

<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="100" height="50">
  <text x="0" y="24" fill="blue" font-family="Helvetica-Bold" font-size="24px">Bold</text>
  <text x="0" y="48" fill="blue" font-family="Helvetica-Narrow" font-size="24px">Narrow</text>
</svg>
Run Code Online (Sandbox Code Playgroud)

如果我使用ImageMagick(在CentOS Linux 7(Core)上运行的ImageMagick 7.0.2-0 Q16 x86_64)将其转换为PDF文件,则结果不会使用已安​​装的字体.

例如:

$ convert -density 600 test.svg test.pdf
Run Code Online (Sandbox Code Playgroud)

产量:

应用默认字体

看起来ImageMagick默认使用的是正常权重Helvetica,它与输入SVG中指定的任何字体系列都不匹配.

接下来,我尝试指定输入SVG中指定的其中一种字体的路径.这是Helvetica-Bold通过运行确定的字体路径convert -list font.

$ convert -density 600 -font /net/module/sw/ghostscript-fonts/5.50-32/n019004l.pfb test-helvetica-mix.svg test-helvetica-mix-bold.pdf
Run Code Online (Sandbox Code Playgroud)

指定粗体字体

第一个<text>元素是正确的 - 它使用Helvetica-Bold.第二个<text>元素是不正确的 - 它也使用Helvetica-Bold,但应该真正使用Helvetica-Narrow.

不过,我越来越接近这种方法了,所以我尝试将路径添加到输入SVG中使用的第二种字体:

$ convert -density 600 -font /net/module/sw/ghostscript-fonts/5.50-32/n019004l.pfb -font /net/module/sw/ghostscript-fonts/5.50-32/n019043l.pfb test-helvetica-mix.svg …
Run Code Online (Sandbox Code Playgroud)

pdf fonts svg types imagemagick

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

找不到为clang找到的aligned_alloc

我在Mac OS X主机上运行以下版本的clang:

$ clang -v
Apple LLVM version 8.1.0 (clang-802.0.42)
Run Code Online (Sandbox Code Playgroud)

我有一些代码使用aligned_alloc()C11函数来分配一个对齐的内存块.

我用-std=c11标志编译我的二进制文件:

...
clang -g -Wall -Wextra -mavx -std=c11 -D__USE_POSIX -D__STDC_CONSTANT_MACROS -D__STDINT_MACROS -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE=1 -O2 -c my_binary.c -o my_binary.o; \
clang -g -Wall -Wextra -mavx -std=c11 -D__USE_POSIX -D__STDC_CONSTANT_MACROS -D__STDINT_MACROS -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE=1 -O2 my_binary.o -o my_binary -lm; \
...
Run Code Online (Sandbox Code Playgroud)

我包括stdlib.h并添加POSIX标志.来自my_binary.h:

...
#ifndef _POSIX_C_SOURCE
#define _POSIX_C_SOURCE 200809L
#endif /* getline() support */

#ifndef _XOPEN_SOURCE
#define _XOPEN_SOURCE 600
#endif /* aligned_alloc() support */

#include …
Run Code Online (Sandbox Code Playgroud)

macos clang c11

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