我有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"...... ???
谢谢
我使用MongoDB的地理空间查询- $near,geoNear等等-我想知道如何打开dis的结果geoNear命令还有radius用于参数$within从可读单位,比如英里或公里查询/.
是否有与把无效的CSS类的字符(任何已知的问题@,:,!在一个HTML元素的class属性)?像这样:
<input type='text' class='compare id:txtSecondary'/>
<input type='text' class='compare @txtSecondary'/>
Run Code Online (Sandbox Code Playgroud) 我想使用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)可以做到这一点,请提供示例或示例参考。
干杯西蒙
我有几个表格是无关的 - 我喜欢搜索它们并创建一个我可以在以后筛选的类型
像这样的东西不起作用
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"列表,其中包含所有狗和所有具有该名称的猫
做这样的事情最好的方法是什么?
是否有使用PowerShell ping机器列表的快速功能?
我知道我可以使用Test-Connection:
Test-Connection -Count 1 -ComputerName (gc .\comps.txt) -ea silentlycontinue
Run Code Online (Sandbox Code Playgroud)
但这似乎很慢(我假设因为它使用Win32_PingStatus).
更好的是一个例子,说明如何将它作为后台工作来加速它将是最有用的.
我怎么能执行像cp somefile somedestinationHaskell 这样的系统命令?
有点像os.Exec.
我正在开发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)
我使用.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 ×3
java ×2
ajax ×1
bytecode ×1
css ×1
dom-events ×1
email ×1
geospatial ×1
haskell ×1
html ×1
iphone ×1
linq ×1
linq-to-sql ×1
mongodb ×1
onload ×1
parsing ×1
powershell ×1
process ×1
reloaddata ×1
system ×1
uitableview ×1