小编Jum*_*hyn的帖子

UIView动画完成后执行代码?

动画结束后执行代码的最佳方法是什么(例如,在淡出后从超视图中删除视图)?我明白setAnimationDidStopSelector:但不确定如何使用它.

iphone objective-c uiview

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

在x86_64中检索数据

如何从.long语句中检索数据?例如:

.data 
data_items:
    .long 3,67,34,222,45,75,54,34,44,33,22,11,66,0

.text

.globl _main
    _main:
         movl    $0, %edi
         movl    data_items(,%edi,4), %eax
Run Code Online (Sandbox Code Playgroud)

在x86_64中不允许出现大量关于绝对寻址的错误.我该如何访问这些数据?我对集会很新,所以如果我的术语令人困惑,我道歉.

编辑:我正在使用GNU汇编程序/ GCC

assembly

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

C++ 类命名空间中的 C 函数调用

我试图通过一个项目来熟悉 C++,但我遇到了一个我不太确定如何处理的错误。我有以下代码:

void myclass::write(std::string str) {
  write(filedes, (void *)str.c_str(), str.length());
}
Run Code Online (Sandbox Code Playgroud)

其中filedes 是myclass 的实例变量。尝试编译它会产生错误:

myclass.cpp: In member function ‘void myclass::write(std::string)’:
myclass.cpp:38: error: no matching function for call to ‘myclass::write(int&, void*, size_t)’
myclass.cpp:37: note: candidates are: void myclass::write(std::string)
myclass.hpp:15: note:                 void myclass::write(std::string, int)
Run Code Online (Sandbox Code Playgroud)

那么我做错了什么?我不能合法地从方法中调用这个函数吗?

c++ system-calls

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

AVAudioSession阻止系统音频

我正在编写一个播放背景音乐的应用程序,为此我正在使用AVAudioSession,如下所示:

[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil];
[[AVAudioSession sharedInstance] setActive:YES error:nil];
NSData *data = [NSData dataWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"song" ofType:@"mp3"]];
player = [[AVAudioPlayer alloc] initWithData:data error:NULL];
player.delegate = self;
[player setVolume:1.0];
...
[player prepareToPlay];
[player play];
Run Code Online (Sandbox Code Playgroud)

然后,稍后,用户可以选择禁用音乐.如果他们选择这样做,则运行以下代码:

[[AVAudioSession sharedInstance] setActive:NO error:nil];
[player stop];
Run Code Online (Sandbox Code Playgroud)

哪个成功阻止音乐播放.但是,如果音乐应用程序(或其他类似Spotify)的音乐启动,然后应用程序切换到,则用户音乐将淡出并暂停.我的应用程序的音乐无法播放,因为它仍处于禁用状态,因此用户可以保持沉默状态.

如何让我的应用程序暂停用户的音乐?

iphone objective-c avaudioplayer avaudiosession

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

退出系统调用不返回 %ebx 的内容?

在 Ubuntu Linux,32 位,x86 处理器上,使用 GAS 编译

我遇到了一个非常奇怪的问题,其中当%ebx我进行退出系统调用时,寄存器的内容没有作为程序的状态代码返回。这是相关代码。这是系统调用之前的寄存器转储:

eax            0x1  1
ecx            0x804a00c  134520844
edx            0xff  255
ebx            0x159  345
esp            0xbffff3bc  0xbffff3bc
ebp            0xbffff3c0  0xbffff3c0
esi            0x0  0
edi            0x0  0
eip            0x80480c6  0x80480c6 <num_loop_end+5>
eflags         0x246  [ PF ZF IF ]
cs             0x73  115
ss             0x7b  123
ds             0x7b  123
es             0x7b  123
fs             0x0  0
gs             0x0  0
Run Code Online (Sandbox Code Playgroud)

以及相关的汇编代码:

   0x080480c1 <+0>:  mov    $0x1,%eax
=> 0x080480c6 <+5>:  int    $0x80
Run Code Online (Sandbox Code Playgroud)

寄存器转储发生在=>上面。但是,我的程序不是返回 345 作为状态代码,而是以 code89 …

linux assembly system-calls exit exitstatus

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

从RSS Feed创建NSDictionary?

我用Google搜索了一下,但在这个问题上找不到很多东西.我有一个RSS提要的URL,我想知道如何以NSDictionary的形式将该内容放入我的应用程序.我可以使用NSData的initWithContentsOfURL吗?

xml iphone objective-c nsdictionary

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