小编ult*_*ous的帖子

App Store - 方法调整合法性

在App Store上是否存在关于方法调查的最新信息是合法/非法的?

我能找到的唯一数据点是一段时间后的Three20框架重组,从这个通知开始:

您当前发布到App Store的应用程序xxx正在使用method_exchangeImplementations将Apple提供的API的实现与您自己的实现交换.由于即将发生的更改,应用程序中的此行为可能会导致崩溃或导致iPhone OS 4.0上的用户数据丢失.

xxx使用method_exchangeImplementations与您的方法ttdealloc交换dealloc的实现.它还用你的方法popViewControllerAnimated2:交换方法popViewControllerAnimated:的实现.

请立即解决此问题,并将新二进制文件上传到iTunes Connect.如果我们认为这样做是谨慎或必要的,我们可能会删除您的申请.


当我在搜索时,我可以找到关于调配和应用程序商店的每个最近的对话似乎都引用了同样的Three20事件.通知似乎非常具体,我想知道问题是否是Three20所做的更改或者method_exchangeImplementations被普遍禁止的具体更改问题.

关于是否允许这种做法,还有其他数据吗?在商店中是否有任何使用应用程序的应用程序的开发人员?

谢谢!

objective-c app-store swizzling ios

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

将objc_setAssociatedObject与弱引用一起使用

我知道OBJC_ASSOCIATION_ASSIGN存在,但是如果目标对象被释放,它是否会将引用归零?或者它是否像旧时代那样需要获取nil-ed或者我们以后会冒错误访问?

weak-references objective-c objective-c-runtime

21
推荐指数
3
解决办法
5249
查看次数

滚动样式UIPageViewController中的多个可见页面

所以我要做的是拥有一个UIPageViewController,它最终将显示三个视图控制器视图,一个完全可见,然后两个作为左右预览.一个例子是iOS6 App Store:

iOS6 App Store

是否使用UIPageViewController设置为 UIPageViewControllerTransitionStyleScroll可能?

基本上我理想的情况是,我可以拥有三个UIViewControllers,我通过列表中的1-项目回收用户页面(n至少为50).我知道一个行为类似的接口可以使用带有分页启用的UIScrollView来完成,但重新使用视图会占用一些视图,如果Apple已经为我做了,我宁愿不写.

顺便说一下,我对这个仅适用于iOS6的事实感到非常自在,并且如果它们存在的话,也会对替代品感到满意.

谢谢!

ios uipageviewcontroller ios6

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

GLSL - 点产品真的只花费一个周期吗?

我遇到过几种情况,声称在GLSL中做点积将最终在一个周期内运行.例如:

顶点和片段处理器在四个向量上运行,在一个周期内执行四组分指令,如加法,乘法,乘法累加或点积.

http://http.developer.nvidia.com/GPUGems2/gpugems2_chapter35.html

我在某处的评论中也看到了一个声明:

    dot(value, vec4(.25))
Run Code Online (Sandbox Code Playgroud)

与以下方法相比,这将是一种更有效的平均四个值的方法:

    (x + y + z + w) / 4.0
Run Code Online (Sandbox Code Playgroud)

同样,声称点(vec4,vec4)将在一个周期内运行.

我看到ARB 说点产品(DP3和DP4)和交叉产品(XPD是单指令,但是这是否意味着那些与vec4添加一样计算成本昂贵?是否基本上有一些硬件实现,沿着在类固醇中多次积累,在这里发挥作用?我可以看到这样的东西在计算机图形学中是如何有用的,但是在一个循环中做一些可能是相当多的指令在他们自己听起来很多.

shader gpgpu glsl

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

使用 80x86 寄存器作为数组索引

我已经尝试解决这个问题有一段时间了。例如,在我正在使用的程序中,我使用以下方式进行键盘输入:

MOV AH,2h;
INT 21h;
Run Code Online (Sandbox Code Playgroud)

基本上,在从控制台返回一个字符之后,我尝试将该值输入到 MOV 中,并以 AL 作为数组索引,例如:

MOV dl,array[[AL]]
Run Code Online (Sandbox Code Playgroud)

在我的简单示例中,我提取一个 ASCII 值,并根据我生成的表吐出下一个字符(基本上只是一个任意练习)。

我尝试过 array[AL]、array[[AL]] 以及可能的其他十几种东西。当我在 MASM 中汇编代码时,出现以下错误:

**error A2031: Must be index or base register**
Run Code Online (Sandbox Code Playgroud)

[AL] 是否不返回存储在 AL 寄存器/指针中的值?

我该如何进行这项工作?

arrays x86 assembly masm

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