我正在使用.NET 2在C#中编写一个软件,它检测Windows机器上是否存在活动的以太网连接.
重要的是它知道它是以太网而不是WiFi,因为程序的行为会有所不同,具体取决于使用WebClient发送数据是通过WiFi还是以太网.
我曾尝试使用System.Net.NetworkInformation.NetworkInterfaceType,但这似乎报告了许多WiFi卡的"以太网".
任何建议将不胜感激.
我正在制作一个iPhone应用程序,其部分界面与iPhone YouTube应用程序的"最受欢迎"部分完全相同.
这个"热门"部分可从底部的标签栏访问,顶部的导航栏包含一个UISegmentedControl,可选择"今天,本周,月等".
因为大多数应用程序都包含UITableViews,其中单元格包含非常相似的结构化内容,所以我创建了一个继承UITableViewController的通用MyAppTableViewController.我的" 流行 "部分因此由一个的PopularTableViewController它继承MyAppTableViewController.实际的UITableView驻留在MyAppTableViewController中.
PopularTableViewController有以下方法:
- (void) segmentChangeTimeframe:(id)sender {
UISegmentedControl *segCtl = sender;
if( [segCtl selectedSegmentIndex] == 0 )
{
// Call [self parse-xml-method-which-resides-in-MyAppTableViewController]
}
//... ... ...
}
Run Code Online (Sandbox Code Playgroud)
该MyAppTableViewController利用的的NSXMLParser,因此具有的代码:
- (void)parserDidEndDocument:(NSXMLParser *)parser {
[self.myTableView reloadData];
}
Run Code Online (Sandbox Code Playgroud)
(还有其他方法可以更新表视图从中获取数据的数据结构)
我已将控制台输出代码放入xml解析方法中,并且在运行时,选择不同的段会导致正确解析正确的xml文件,并且数据结构似乎包含正确的值.
问题是表格单元格的内容不会改变!GRR!除非!...一个单元格滚出视图,然后返回视图......然后它被改变了!
我已经做了很多关于这个问题的搜索,并且针对类似问题的一个建议是将[self.myTableView reloadData]放入其自己的方法,例如myReloadDataMethod,然后使用:
[self performSelectorOnMainThread:@selector(myReloadDataMethod) withObject:nil waitUntilDone:NO];
Run Code Online (Sandbox Code Playgroud)
我尝试将上面的代码放入parserDidEndDocument方法,它完全没有区别!我非常难过,我想知道是否有人知道这里发生了什么.
更新:
填充单元格的代码完成:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { …Run Code Online (Sandbox Code Playgroud)