小编Mar*_*tos的帖子

响应iOS中的RAM可用性

我有一个质量很重的OpenGL游戏,我想根据设备有多少RAM进行调整.最高分辨率的纹理我在iPhone 4或iPad2上运行良好,但早期的设备在加载纹理的过程中崩溃.我有这些纹理的低分辨率版本,但我需要知道何时使用它们.

我目前的策略是检测特定的旧设备(3GS有低分辨率屏幕; iPad没有摄像头),然后只加载IPad2及以上和iPhone 4及以上的高分辨率纹理 - 我想我需要为iPod touch做点事.但我更倾向于使用特征检测而不是硬编码设备模型,因为模型检测对于API和硬件的未来变化是脆弱的.

我正在考虑的另一种可能性是首先加载高分辨率纹理,然后在我得到低内存警告时丢弃并用lo-res替换它们.但是,我不确定我是否有机会回应; 我注意到应用程序经常在调试控制台上出现任何通知之前死掉.

如何检测我正在运行的设备是否有足够的RAM来加载我的纹理的高分辨率版本?

退后一步,是否还有一些我可以使用的自适应技术,这是特定于OpenGL纹理内存的?

笔记:

  1. 我搜索和关闭SO以获得与可用RAM检测相关的答案,但它们基本上都建议分析内存使用情况并消除浪费(最大限度地缩短临时工作的寿命,以及所有这些).我已经做了尽可能多的事情,而且我无法将高分辨率纹理压缩到旧设备中.

  2. PVRTC不是一种选择.纹理包含片段着色器要使用的数据,并且必须以无损格式存储.

textures opengl-es feature-detection ios

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

使DIV覆盖视口的100%而不是100%的身体

我的帖子是关于http://www.thepostboard.net的

我需要让目前覆盖100%视口的黑盒子覆盖整个页面.如果您的屏幕需要滚动条来查看网站,您将只能注意到这一点 - 否则它看起来很好.

我有重叠的div设置为:

position: absolute;
height: 100%;
width: 100%;
Run Code Online (Sandbox Code Playgroud)

我也有身体设置:

height: 100%;
margin: 0px 0px;
padding: 0px; 0px;
Run Code Online (Sandbox Code Playgroud)

但由于某些原因我的笔记本电脑向下滚动,我看到DIV的边缘,没有任何东西在它下方被阻挡.

这样做的目的是为网站创建一个自定义灯箱.我已经禁用了使框变暗的Javascript,以便您可以看到效果.

如何使其覆盖整个页面,而不仅仅是视口?

(我的笔记本电脑是1366x768,所以你可能会在高度分辨率<= 760的任何东西上看到它.

html javascript height layout

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

使用C++的SOCKS代理

如何从我的C++套接字程序中使用SOCKS代理?

c++ socks

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

AES的四分之一字节和AES密钥是多少?

我在C#/ .Net Framework中使用AESCryptoServiceProvider,我想知道IV和Keys有多大(以字节为单位).我很确定这个课程遵循AES的规格,所以如果有人有任何想法,我会很高兴听到它:)

c# encryption aescryptoserviceprovider

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

按最大条件匹配排序

请帮我创建一个包含10'where'子句的选择查询,顺序应该是这样的:结果应该按照大多数关键字(条件)匹配到最不匹配的顺序显示.

注意:所有10个条件都带有"OR".

请帮我创建这个查询.我正在使用ms-sql server 2005

喜欢:

Select *
  from employee
 where empid in (1,2,4,332,434)
    or empname like 'raj%'
    or city = 'jodhpur'
    or salary >5000
Run Code Online (Sandbox Code Playgroud)

在上面的查询中,所有那些匹配最大条件的记录应该在顶部,而较少匹配的条件记录应该在底部.

sql select sql-order-by where-clause

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

读取XML数据时已超出最大数组长度配额(16384)

我收到了以下错误

读取XML数据时已超出最大数组长度配额(16384).通过更改创建XML阅读器时使用的XmlDictionaryReaderQuotas对象上的MaxArrayLength属性,可以增加此配额.第1行,位置187231.描述:在执行当前Web请求期间发生了未处理的异常.请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息.

例外细节:

System.Xml.XmlException:读取XML数据时已超出最大数组长度配额(16384).通过更改创建XML阅读器时使用的XmlDictionaryReaderQuotas对象上的MaxArrayLength属性,可以增加此配额.第1行,位置187231.

来源错误:

在执行当前Web请求期间生成了未处理的异常.可以使用下面的异常堆栈跟踪来识别有关异常的起源和位置的信息.

堆栈跟踪:

[XmlException: The maximum array length quota (16384) has been exceeded while reading XML data. This quota may be increased by changing the MaxArrayLength property on the XmlDictionaryReaderQuotas object used when creating the XML reader. Line 1, position 187231.]
   System.Xml.XmlExceptionHelper.ThrowXmlException(XmlDictionaryReader reader, String res, String arg1, String arg2, String arg3) +311
   System.Xml.XmlExceptionHelper.ThrowMaxArrayLengthExceeded(XmlDictionaryReader reader, Int32 maxArrayLength) +59
   System.Xml.XmlBaseReader.ReadContentAsBase64() +1580759
   System.Xml.XmlDictionaryReader.ReadElementContentAsBase64() +62
   System.Runtime.Serialization.XmlReaderDelegator.ReadElementContentAsBase64() +58
   ReadPDFResponseFromXml(XmlReaderDelegator , XmlObjectSerializerReadContext , XmlDictionaryString[] , XmlDictionaryString[] ) +525
   System.Runtime.Serialization.ClassDataContract.ReadXmlValue(XmlReaderDelegator xmlReader, XmlObjectSerializerReadContext context) …
Run Code Online (Sandbox Code Playgroud)

wcf-client

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

使用外键的sqlite查询

请帮助sqlite n00b.

我有两张桌子

   "CREATE TABLE students (" +
          "_id       INTEGER PRIMARY KEY AUTOINCREMENT," +
          "studentname      TEXT not null," +
          "studentpic       BLOB," +
          "comment          TEXT);";
Run Code Online (Sandbox Code Playgroud)

   "CREATE TABLE classes (" +
           "_id              INTEGER PRIMARY KEY AUTOINCREMENT," +
           "classname        TEXT," +
           "attend           INTEGER," +
           "late             INTEGER," +
           "dtime            TEXT," +
           "student          INTEGER REFERENCES students(_id) on
                             UPDATE CASCADE);";
Run Code Online (Sandbox Code Playgroud)

我想在特定的类中显示学生列表,但我的classes表仅通过student-id引用它们,如何构造查询以将"classes"表的所有字段拉回单个游标但使用实际名称从'学生'表?

提前谢谢了

sqlite android

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

NSAssert没有堆栈跟踪

IIRC,这通常有效.但是最近我注意到这NSAssert…()并没有给我堆栈跟踪,或者至少没有用处:

2012-02-26 14:41:19.283 MyApp[3299:707] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: '…'
*** First throw call stack:
(0x33cc58bf 0x353e11e5 0x33cc57b9 0x317583b3 0x78423 0x76e35 0x77dbf 0x217dd 0x12c63 0x3178a943 0x33c99a63 0x33c996c9 0x33c9829f 0x33c1b4dd 0x33c1b3a5 0x3585bfcd 0x34d60743 0xde87 0x30dc)
terminate called throwing an exception(gdb) bt
#0  0x3629232c in __pthread_kill ()
#1  0x34b3ef5a in pthread_kill ()
#2  0x34b37fea in abort ()
#3  0x35fe9f6a in abort_message ()
#4  0x35fe734c in default_terminate ()
#5  0x353e12e2 in _objc_terminate ()
#6  0x35fe73c4 in safe_handler_caller …
Run Code Online (Sandbox Code Playgroud)

objective-c ios

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

带有JSON响应的NSData到NSString

NSData*jsonData是包含JSON数据的http响应.

NSString* jsonString = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];
NSLog(@"jsonString: %@", jsonString);
Run Code Online (Sandbox Code Playgroud)

我得到了结果:

{ "result": "\u8aaa" }
Run Code Online (Sandbox Code Playgroud)

将数据编码为正确字符串的正确方法是什么,而不是像"\ uxxxx"这样的unicode字符串?

encoding json nsstring nsdata ios

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

数组中值的快速乘法

有没有一种快速的方法来在C++中乘以浮点数组的值,以优化此函数(其中count是4的倍数):

void multiply(float* values, float factor, int count)
{
    for(int i=0; i < count; i++)
    {
        *value *= factor;
        value++;
    }
}
Run Code Online (Sandbox Code Playgroud)

解决方案必须适用于Mac OS X和Windows,Intel和非Intel.想想SSE,矢量化,编译器(gcc与MSVC).

c++ arrays optimization multiplication

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