有没有办法改变设备的音量?我见过几个应用程序.
我有一个桌面版的iOS应用程序,该设备将能够在某种程度上通过网络进行控制.我想让用户做的一件事就是更改设备音量然后播放声音.这可以帮助你再次将你的iPhone放在沙发上的裂缝中,但找不到它.
如果没有Apple生气,你有没有办法做到这一点?
在我正在开发的iOS应用程序中,我显示UIWebView
允许用户升级其帐户.该页面包含显示用户其他信息的链接,但您将手指放在链接上,会弹出如下菜单:
正如您所看到的,它显示了页面的URL和将要执行的操作,我不希望用户看到它,因为我不希望它们能够复制任何内容,因为我禁用了"复制/剪切/粘贴"菜单已经.我该如何禁用此菜单?
谢谢你的任何指示.
如何将Info.plist中指定类型的文件(或选择在Finder中打开)放到我的停靠栏图标上,然后使用文件的完整路径调用方法?
您在iPhone上使用的许多耳机(包括Apple自己的耳机)都有按钮,麦克风或两者兼而有之.
它们可以很好地与Mac配合使用,iTunes可以正确识别按钮.
我的问题是 - 你如何在Cocoa中检测到这些按钮?我正在为您的菜单栏中的iTunes写一个小的替代品,我还想要响应耳机按钮,而不仅仅是键盘的媒体键.
谢谢你的回复!
我一直在使用延迟渲染器进行照明,虽然在我的G缓冲区中使用位置缓冲区,但它运行良好.照明是在世界空间完成的.
我试图实现一个算法,从深度缓冲区和纹理坐标重新创建世界空间位置,虽然没有运气.
我的顶点着色器没什么特别的,但这是我的片段着色器的一部分,我(试图)计算世界空间位置:
// Inverse projection matrix
uniform mat4 projMatrixInv;
// Inverse view matrix
uniform mat4 viewMatrixInv;
// texture position from vertex shader
in vec2 TexCoord;
... other uniforms ...
void main() {
// Recalculate the fragment position from the depth buffer
float Depth = texture(gDepth, TexCoord).x;
vec3 FragWorldPos = WorldPosFromDepth(Depth);
... fun lighting code ...
}
// Linearizes a Z buffer value
float CalcLinearZ(float depth) {
const float zFar = 100.0;
const float zNear = 0.1;
// bias it …
Run Code Online (Sandbox Code Playgroud) 有没有办法在一个NSWindow中拥有2个工具栏.像Pages这样的东西.顶部有一个大的,下面有一个较小的.
我怎么能在Cocoa中编写捆绑包而没有太多的"模糊"呢?我只想要一个包含Info.plist,一个Contents文件夹的包,该文件夹应包含几个文件.
我希望能够在指定的时间内振动iPhone.使用AudioToolbox框架时,当我使用此代码时,它会振动大约2秒钟:
AudioServicesPlaySystemSound (kSystemSoundID_Vibrate);
Run Code Online (Sandbox Code Playgroud)
这样可以完成工作,但我宁愿根据用户执行操作的方式振动更短(或更长)的持续时间,更不用说它可以为游戏开发者带来的好处.
谢谢你的任何想法.
我有一个关于使用QAudioOutput直接以特定采样率将样本写入声音输出设备的问题.我正在编写一个模拟器,它在每帧的基础上模拟声音芯片,然后得到一个包含帧的音频样本的缓冲区,我想写入音频输出.目前,为了测试我的音频输出例程,我分配了一个巨大的(5分钟)缓冲区来放入随机数,如下所示:
标题:
uint16_t *audio_outputBuffer;
uint32_t audio_bytesRemainingToRead;
QAudioOutput *audio_outputStream;
QIODevice *audio_outputDevice;
Run Code Online (Sandbox Code Playgroud)
执行:
audio_outputBuffer = (uint16_t *) malloc((96000 * 4) * 300);
int i = 0;
uint16_t *tempAudioBuffer = audio_outputBuffer;
for(i = 0; i < ((96000 * 4) * 150); i++) {
*tempAudioBuffer = (uint16_t) rand() & 0xFFFF;
tempAudioBuffer++;
}
audio_bytesRemainingToRead = (96000 * 4) * 300;
Run Code Online (Sandbox Code Playgroud)
接下来,我使用一些基本参数设置我的音频设备:
// Set up the format
QAudioFormat format;
format.setFrequency(96000); // Usually this is specified through an UI option
format.setChannels(2);
format.setSampleSize(16);
format.setCodec("audio/pcm");
format.setByteOrder(QAudioFormat::LittleEndian);
format.setSampleType(QAudioFormat::UnSignedInt);
// There's …
Run Code Online (Sandbox Code Playgroud) 我正在编写一个基于 C 的 WinAPI 程序,它在主窗口的客户区中有一个选项卡控件。此选项卡控件效果很好,但选项卡似乎存在某种呈现问题。选项卡的标题以粗体、无锯齿的字体呈现,因此浪费了大量的屏幕空间:
以下是基本上所有其他应用程序中选项卡的外观:
我使用此代码来设置我的选项卡控件:
RECT rcClient, rcTool, rcTab;
TCHAR tabTitleTmp[256]; // Temp string buffer
HWND hTool = GetDlgItem(hWnd, IDC_MAIN_TOOL);
GetWindowRect(hTool, &rcTool);
int iToolHeight = rcTool.bottom - rcTool.top;
// Get parent's client rect
GetClientRect(hWnd, &rcClient);
// Create tab control
HWND hwndTab = CreateWindowEx(NULL, WC_TABCONTROL, NULL, WS_CHILD | WS_CLIPSIBLINGS | WS_VISIBLE,
0, iToolHeight, rcClient.right, rcClient.bottom - iToolHeight, hWnd, (HMENU) IDC_MAIN_TAB,
hInst, NULL);
// Create tab items
TCITEM tie;
tie.mask = TCIF_TEXT | TCIF_IMAGE;
tie.iImage = -1;
tie.pszText = tabTitleTmp; …
Run Code Online (Sandbox Code Playgroud)