问题列表 - 第32662页

UITableView reloadData - 未触发cellForRowAtIndexPath

我有splitViewController,它具有MasterViewController的一些viewController和DetailViewController的一些tableViewController.当我按下masterViewController上的一个按钮时,我想在detailViewController中显示新的tableViewController而不是现有的.

所以我喜欢这样:

SearchDetailViewController *searchDetailViewController = [[SearchDetailViewController alloc] initWithStyle:UITableViewStylePlain];
UINavigationController *searchDetailNavigationController = [[UINavigationController alloc] initWithRootViewController:searchDetailViewController];
Run Code Online (Sandbox Code Playgroud)

之后,我将数据传递给new tableController中显示:

[searchDetailViewController passInSearchResults:listOfItems];
Run Code Online (Sandbox Code Playgroud)

之后我将"新控制器""推送"到splitViewController:

[searchSplitViewController setViewControllers:[NSArray arrayWithObjects:self.navigationController, searchDetailNavigationController, nil]];
Run Code Online (Sandbox Code Playgroud)

在目标tableViewController方法中传递"passInSearchResults"数据,我也调用reloadData.方法看起来像这样:

- (void)passInSearchResults:(NSMutableDictionary *)searchResults {
    self.searchResultList = searchResults;
    NSLog(@"Data is passed in: %@",self.searchResultList);
    [self.tableView reloadData];
    //[self.tableView setNeedsDisplay];
}
Run Code Online (Sandbox Code Playgroud)

控制台:传入数据:[这里我得到了我想要的确切数据,看起来恰到好处].

After this I see that method "numberOfRowsInSection" is fired:
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    NSLog(@"Setting table length: %i",[self.searchResultList count]);
    return [self.searchResultList count];
}
Run Code Online (Sandbox Code Playgroud)

控制台:设置表长度:[这里我得到适当的长度]

问题是表没有填充传递的数据,并且没有调用方法"cellForRowAtIndexPath".

怎么可能在reloadData方法"numberOfRowsInSection"被触发但不是方法"cellForRowAtIndexPath"...... ???

谢谢

iphone uitableview reloaddata

8
推荐指数
2
解决办法
9762
查看次数

小型Ajax JavaScript库

我正在寻找一个非常小的(一个线程)Ajax JavaScript库来添加一个小脚本的第一行来发出一些请求.

我已经尝试过:

但它们根本不起作用.备择方案?

javascript ajax

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

MongoDB地理距离/半径到有用单位

我使用MongoDB的地理空间查询- $near,geoNear等等-我想知道如何打开dis的结果geoNear命令还有radius用于参数$within从可读单位,比如英里或公里查询/.

geospatial mongodb human-readable

5
推荐指数
2
解决办法
7103
查看次数

在HTML元素的class属性中放入无效的CSS字符(`@`,`:`,`!`)是否存在任何已知问题?

是否有与把无效的CSS类的字符(任何已知的问题@,:,!在一个HTML元素的class属性)?像这样:

<input type='text' class='compare id:txtSecondary'/>
<input type='text' class='compare @txtSecondary'/>
Run Code Online (Sandbox Code Playgroud)

html javascript css cross-browser css-selectors

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

直接从文件系统以标准RFC邮件格式使用Java读取/解析电子邮件/邮件

我想使用Java(1.6)直接从文件系统解析电子邮件,电子邮件将位于文件系统文件夹中,例如

abc-12345.msg qwe-23456.msg

并将采用标准格式:例如:

MIME-Version: 1.0
Sender: mr.sender@gmail.com
Received: by 10.239.173.80 with HTTP; Thu, 12 Aug 2010 11:30:50 -0700 (PDT)
Date: Thu, 12 Aug 2010 15:30:50 -0300
Delivered-To: mr.recipient@gmail.com
Message-ID: <AANLkTikA-RbE_revkimBCWC2fUrG=t4T47AXq5FTx0vd@mail.gmail.com>
Subject: =?ISO-8859-1?Q?Hello_With_Acc=E9=F1ts?=
From: Mr Sender <mr.sender@gmail.com>
To: Mr Recipient <mr.recipient@gmail.com>
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

This is a testing one

Accent characters:

=E9=F3=FA=F1

Email End
Run Code Online (Sandbox Code Playgroud)

我想解析此文件或使用现有的库来解析该文件,以使我可以访问标题/ from / to / subject / body等。

文件全部保存在本地文件系统上。我无法通过pop / imap连接到消息存储。对我而言,最简单,最直接的方法是什么。这些文件可能包含附件。

任何建议都非常欢迎。如果现有的api(也许是javamail)可以做到这一点,请提供示例或示例参考。

干杯西蒙

java email parsing

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

一次搜索多个表(Linq to SQL)?

我有几个表格是无关的 - 我喜欢搜索它们并创建一个我可以在以后筛选的类型

像这样的东西不起作用

var results = from dog in _dataContext.Dogs  
                      where dog.Name.Contains(search)  

                      from catin _dataContext.Cats  
                      where cat.Name.Contains(search)  

                      select new AnimalSearchResults  
                                  {  
                                      Dog = dog,  
                                      Cat = cat  
                                  };  

        return results;  
Run Code Online (Sandbox Code Playgroud)

我基本上想要创建一个"AnimalSearchResults"列表,其中包含所有狗和所有具有该名称的猫

做这样的事情最好的方法是什么?

linq linq-to-sql

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

PowerShell的快速​​ping功能

是否有使用PowerShell ping机器列表的快速功能?

我知道我可以使用Test-Connection:

Test-Connection -Count 1 -ComputerName (gc .\comps.txt) -ea silentlycontinue
Run Code Online (Sandbox Code Playgroud)

但这似乎很慢(我假设因为它使用Win32_PingStatus).

更好的是一个例子,说明如何将它作为后台工作来加速它将是最有用的.

powershell

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

什么是Java字节码注入?

究竟什么是Java字节码注入以及为什么要使用它?

java bytecode

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

在Haskell中执行系统命令

我怎么能执行像cp somefile somedestinationHaskell 这样的系统命令?

有点像os.Exec.

haskell system process

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

.onload从Firefox扩展中多次调用

我正在开发Firefox扩展并具有以下代码:

function initialize() { 
    // For accessing browser window from sidebar code.
    var mainWindow = window.QueryInterface(Components.interfaces.nsIInterfaceRequestor)
               .getInterface(Components.interfaces.nsIWebNavigation)
               .QueryInterface(Components.interfaces.nsIDocShellTreeItem)
               .rootTreeItem
               .QueryInterface(Components.interfaces.nsIInterfaceRequestor)
               .getInterface(Components.interfaces.nsIDOMWindow);
    var gBrowser = mainWindow.gBrowser;
    gBrowser.onload = function() {
        alert('loaded');
    };
}
Run Code Online (Sandbox Code Playgroud)
  1. 当我打开扩展程序(侧边栏)并继续在Firefox窗口中打开一个新选项卡时,有三个警告框.
  2. 刷新页面时,有两个警告框.
  3. 页面完成加载后,只有一个警告框.
  4. 当我更改标签时,会触发警报.

我使用.onload而不是DOMContentLoaded或readystatechange,因为我需要等到所有其他javascript在我运行之前已经完成加载页面.

关于为什么触发多个事件的原因(以及不应该触发事件的事情)的任何想法?

根据MatrixFrog的建议,这是我遇到的解决方案:

function initialize() { 
    // For accessing browser window from sidebar code.
    var mainWindow = window.QueryInterface(Components.interfaces.nsIInterfaceRequestor)
               .getInterface(Components.interfaces.nsIWebNavigation)
               .QueryInterface(Components.interfaces.nsIDocShellTreeItem)
               .rootTreeItem
               .QueryInterface(Components.interfaces.nsIInterfaceRequestor)
               .getInterface(Components.interfaces.nsIDOMWindow);
    var gBrowser = mainWindow.gBrowser;
    if (gBrowser.addEventListener) {
        gBrowser.addEventListener("load",pageLoaded,true);
    }    
}

function pageLoaded(aEvent) {
    if ((aEvent.originalTarget.nodeName == …
Run Code Online (Sandbox Code Playgroud)

javascript firefox-addon onload dom-events

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