问题列表 - 第18457页

- (void)applicationWillResignActive :( UIApplication*)应用程序永远不会被调用

我正在尝试处理电话和待机以及那种性质的事情.我添加了这个功能

- (void)applicationWillResignActive:(UIApplication *)application
Run Code Online (Sandbox Code Playgroud)

- (void)applicationDidBecomeActive:(UIApplication *)application
Run Code Online (Sandbox Code Playgroud)

到我的UIApplicationDelegate.当退出待机状态时,"applicationDidBecomeActive"总是被调用.但问题是"applicationWillResignActive"永远不会被调用.

我想知道是否有人遇到过这个问题以及是否有人找到了理由.

编辑

更多信息,我发现我的引擎的更新循环从applicationDidFinishLaunching运行导致我错过了该消息.我打电话

while(CFRunLoopRunInMode(kCFRunLoopDefaultMode, .002, FALSE) == kCFRunLoopRunHandledSource);
Run Code Online (Sandbox Code Playgroud)

捕获所有iphone消息但似乎在变为非活动状态之前没有捕获resignActive消息.

尝试为我的更新循环分叉线程会导致奇怪的崩溃错误.有人有任何快速解决建议吗?

iphone cocoa-touch objective-c

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

Erlang:这个trie实现最糟糕的是什么?

在假期,我的家人喜欢玩Boggle.问题是,我在Boggle很糟糕.所以我做了任何优秀的程序员会做的事情:写了一个程序给我玩.

该算法的核心是一个简单的前缀trie,其中每个节点都是dict对下一个字母的引用.

这是trie:add实施:

add([], Trie) ->
    dict:store(stop, true, Trie);

add([Ch|Rest], Trie) ->
    % setdefault(Key, Default, Dict) ->
    %     case dict:find(Key, Dict) of
    %         { ok, Val } -> { Dict, Val }
    %         error -> { dict:new(), Default }
    %     end.
    { NewTrie, SubTrie } = setdefault(Ch, dict:new(), Trie),
    NewSubTrie = add(Rest, SubTrie),
    dict:store(Ch, NewSubTrie, NewTrie).

你可以看到其余的,以及它如何使用的例子(在底部),这里:

http://gist.github.com/263513

现在,这是我在Erlang中的第一个认真的程序,我知道它可能有一些问题......但我最关心的是它使用800兆字节的RAM.

那么,我做错了什么?我怎么能把它弄错呢?

erlang trie

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

如何在Twitter更新中处理ISO-2022-JP(和其他字符集)?

我的部分应用程序接受任意文本并将其作为Twitter更新发布.一切正常,直到发布外国(非ASCII/UTF7/8)字符集,然后事情不再有效.

例如,如果有人发布:
に投稿できる

它(在我的Visual Studio调试器中的代码中)变为:
=?ISO-2022-JP?B?GyRCJEtFajlGJEckLSRrGyhC?=

谷歌搜索告诉我,这表示(减去?作为分隔符)

=?ISO-2022-JP是文本编码
?B表示它是base64编码的
?GyRCJEtFajlGJEckLSRrGyhC?是编码的字符串

对于我的生活,我无法弄清楚如何将这个字符串作为Twitter的原始日文字符的更新发布.现在,将'=?ISO-2022-JP?B?GyRCJEtFajlGJEckLSRrGyhC?='发送到Twitter将导致发布.我也尝试将字符串分成几部分,使用System.Text.Encoding从ISO-2022-JP转换为UTF8,反之亦然,base64解码而不是.此外,香港专业教育学院使用状态更新的URL编码,如下所示:


string[] bits = tweetText.Split(new char[] { '?' });
if (bits.Length >= 4)
{
textEncoding = System.Text.Encoding.GetEncoding(bits[1]);
xml = oAuth.oAuthWebRequest(TwitterLibrary.oAuthTwitter.Method.POST, url, "status=" +   System.Web.HttpUtility.UrlEncode(decodedText, textEncoding)); 
}
Run Code Online (Sandbox Code Playgroud)

无论我做什么,结果都不会恢复正常.

编辑:最后得到它.对于那些在家里跟随的人来说,它非常接近下面列出的答案.只是Visual Studios调试器指导我错误的方式和我正在使用的Twitter库中的一个错误.最终结果如下:


decodedText = textEncoding.GetString(System.Convert.FromBase64String(bits[3]));
byte[] originalBytes = textEncoding.GetBytes(decodedText);
byte[] utfBytes = System.Text.Encoding.Convert(textEncoding, System.Text.Encoding.UTF8, originalBytes);
// now, back to string form
decodedText = System.Text.Encoding.UTF8.GetString(utfBytes);

谢谢大家.

c# twitter encoding

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

如何处理来自单独线程的窗口消息?

我希望启动一个单独的线程来处理窗口消息(通过阻塞GetMessage循环),但之后仍然在初始线程中创建窗口.

在单独的线程中,一旦启动,我就PeekMessage用PM_NOREMOVE 调用以确保存在消息队列(这是必要的吗?),然后是..

AttachThreadInput(initial thread id,GetCurrentThreadId(),true)
Run Code Online (Sandbox Code Playgroud)

..最后进入消息循环

我还没有使用互斥锁或cs来确保及时发生这种情况,但Sleep为了简单起见,我只是在我的初始线程中使用了一个语句.

无论如何,窗口消息似乎不被单独的线程拦截.

我不确定我是否正确地这样做,并希望得到任何可能的指导.两个线程都在同一个进程中

谢谢你们

windows winapi multithreading

6
推荐指数
2
解决办法
5293
查看次数

如何访问Android Emulator数据库的内容?

我已经阅读了关于如何访问数据库内容的问题的答案,但是我似乎无法让它在我的机器上运行.这是shell日志:

C:\android-sdk-windows\tools>adb -s emulator-5554 shell
# sqlite3 /data/data/com.android.demo.notepad2/databases/notes
sqlite3 /data/data/com.android.demo.notepad2/databases/notes
SQLite version 3.5.9
Enter ".help" for instructions
sqlite> .tables
.tables
sqlite> ^C
C:\android-sdk-windows\tools>
Run Code Online (Sandbox Code Playgroud)

尽管Eclipse文件浏览器告诉我它存在,但SQLite只是回复我的命令.如果我使用sqlite3工具并使用".tables",则接受命令.

通过模拟器的SQLite语法是不同的是我错过了什么?

(很抱歉这么多问题,Android上似乎没有太多连贯的文档!)

谢谢!

sqlite android adb

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

C中#include的成本

说#include并且从不使用stdio.h中的任何内容.与此相关的间接成本是多少?

我注意到很多网络代码包括他们可以想到的所有网络相关的标题,以防他们最终使用其中一个的东西,所以我想知道这是否是某种易用性与效率权衡,或者如果没有效率低下.

c include

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

关于IntelliJ到Eclipse转换的问题

我刚开始使用eclipse进行一些个人项目,并且发现从IntelliJ(我在工作中使用的)转换有点烦人.我希望在同一个帖子中提出几个不同的问题是犹太教的.开始:

1)我如何得到"观点"(我不确定这是否是这个术语.我的意思是像Project Explorer,服务器,控制台等一样的窗口),即使在我点击了编辑或其他观点.我很确定现在所有这些选项卡都是"快速查看",我已经最小化然后停靠,所以我可能不会这样开始.在IntelliJ中,我只想固定标签.

2)如何打开文件(例如,ant build.xml)而不必将其作为eclipse项目的一部分?我想要IDE给我的语法高亮和Ctrl点击能力(更不用说能够使用eclipse的内置蚂蚁),但我不需要将文件与任何其他人关联,所以不要看必须使它成为项目的一部分.

3)是否只是我(不会感到惊讶)或eclipse有一个错误解析相同类型的html标签体内的空html标签.我只是在JSP中对此进行了测试,并且JSF标签不会发生这种情况.例如:<div id="foo"><div id="bar"/></div>.Eclipse将发出警告,说第一个div标签没有结束标记.这是最新版本的eclipse for Java EE,没有安装任何插件.

4)最后,一般性的问题:任何最佳做法或资源来看待组织日食接口和观点/看法?工作区/项目怎么样?是否有一些教程可以提供真正的信息,我可以在不到一个小时内阅读?

我感谢任何答案和提示/技巧.

java eclipse ide intellij-idea

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

使用Moq的单元测试没有通过,对象为空,我错过了什么吗?

我想测试的类是我的ArticleManager类,特别是LoadArticle方法:

public class ArticleManager : IArticleManager
{
      private IArticle _article;

      public ArticleManger(IDBFactory dbFactory)
      {
            _dbFactory = dbFactory;
      }

      public void LoadArticle(string title)
      {
            _article = _dbFactory.GetArticleDAO().GetByTitle(title);

      }
}
Run Code Online (Sandbox Code Playgroud)

我的ArticleDAO看起来像:

public class ArticleDAO : GenericNHibernateDAO<IArticle, int>, IArticleDAO
{
       public virtual Article GetByTitle(string title)
       {
           return Session.CreateCriteria(typeof(Article))
               .Add(Expression.Eq("Title", title))
               .UniqueResult<Article>();
       }
}
Run Code Online (Sandbox Code Playgroud)

我的测试代码使用NUnitMoq:

[SetUp]
public void SetUp()
{
        _mockDbFactory = new Mock<IDBFactory>();
        _mockArticleDao = new Mock<ArticleDAO>();

        _mockDbFactory.Setup(x => x.GetArticleDAO()).Returns(_mockArticleDao.Object);

        _articleManager = new ArticleManager(_mockDbFactory.Object);
}


[Test]
public void load_article_by_title() …
Run Code Online (Sandbox Code Playgroud)

c# nhibernate unit-testing moq

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

SQL Server中的正则表达式

我在我的数据库中存储了看起来像的值5XXXXXX,其中X可以是任何数字.换句话说,我需要匹配传入的SQL查询字符串,如5349878.

有谁知道怎么做?

我有不同的情况XXXX7XX,例如,所以它必须是通用的.我不关心在SQL Server中以不同的方式表示模式.

我在.NET中使用c#.

regex sql sql-server expression

25
推荐指数
3
解决办法
13万
查看次数

如果错误的参数数量传入**args,会引发什么异常?

假设在python中你有一个接受三个命名参数的例程(如**args),但是必须填写这三个中的任何两个.如果只填写了一个,那就是错误.如果这三个都是,那就是错误.你会提出什么样的错误?RuntimeError,一个专门创建的异常,还是其他?

python exception

10
推荐指数
2
解决办法
6678
查看次数