动画结束后执行代码的最佳方法是什么(例如,在淡出后从超视图中删除视图)?我明白setAnimationDidStopSelector:
但不确定如何使用它.
如何从.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
我试图通过一个项目来熟悉 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)
那么我做错了什么?我不能合法地从方法中调用这个函数吗?
我正在编写一个播放背景音乐的应用程序,为此我正在使用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)的音乐启动,然后应用程序切换到,则用户音乐将淡出并暂停.我的应用程序的音乐无法播放,因为它仍处于禁用状态,因此用户可以保持沉默状态.
如何让我的应用程序暂停用户的音乐?
在 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 …
我用Google搜索了一下,但在这个问题上找不到很多东西.我有一个RSS提要的URL,我想知道如何以NSDictionary的形式将该内容放入我的应用程序.我可以使用NSData的initWithContentsOfURL吗?
iphone ×3
objective-c ×3
assembly ×2
system-calls ×2
c++ ×1
exit ×1
exitstatus ×1
linux ×1
nsdictionary ×1
uiview ×1
xml ×1