Я также искал эту проблему, и до сих пор я не нашел не жестко закодированное решение, но, по крайней мере, нашел следующее решение, которое отлично подходит для моих нужд (оно почти такое же, как у вас). ):
extension UITableView {
func reloadDataWithoutAnimation(scrollingAt desiredIndexPath: IndexPath, at desiredScrollPosition: UITableView.ScrollPosition) {
UIView.performWithoutAnimation {
reloadData()
scrollToRow(at: desiredIndexPath, at: desiredScrollPosition, animated: false)
}
}
}
let indexPath = IndexPath(row: desiredRow, section: desiredSection)
tableView.reloadDataWithoutAnimation(scrollingAt: indexPath, at: desiredScrollPosition)
Надеюсь, это поможет.
Для использования в своих интересах LINQ Вам нужно 3.5 (если Вы не хотите использовать LINQBridge с 2,0).
Для меньшего установщика.Net 3.5 Sp1 имеет новую возможность, названную "Клиентский Профиль".
Клиентская установка Профиля Платформы.NET содержит просто те блоки и файлы в Платформе.NET, которые обычно используются для сценариев клиентского приложения. Например: это включает Windows Forms, WPF и WCF. Это не включает ASP.NET и те библиотеки и компоненты, используемые, прежде всего, для серверных сценариев. Мы ожидаем, что этот установочный пакет составит приблизительно 26 МБ в размере, и он может быть загружен и установлен намного более быстрый, чем полный установочный пакет Платформы.NET.
Также отметьте, зависеть было Вами, устанавливают платформу.NET, это могло бы быть не важно сколько дополнительного объема, там. Установки Платформы.NET являются относительно маленькими в современных терминах.
Что касается LINQ, это сохранит Вас много времени и усилия, и предлагает быстрый способ достигнуть данные. Однако это также зависит от клиентов, которым приложение будет распределено.
Я сказал бы в том, что, пойдите с 3,5, если нет другой главный контрольно-пропускной пункт на клиентах по любой причине.
Как другие указали.NET, 3,5 установки дольше и больше, чем.NET 2.0. Следует иметь в виду, что.NET 3.0 и.NET 3.5 являются оба расширениями сверху.NET 2,0 CLR.
Я все еще сказал бы, что обновление от VB6 непосредственно к.NET 3.5 (на самом деле.NET 3,5 SP1) и VS2008, пока Ваши клиентские операционные системы поддерживают ту версию Платформы (иначе, необходимо будет выбрать самую низкую версию общих основ, которая очень хорошо может быть.NET 2.0). Вы сохраните себя много времени/усилия в конечном счете.
Следует иметь в виду, что определенные Ose (Windows 2000 Server) не позволят Вам установить.NET 3.0 или 3.5, таким образом, Вам, вероятно, придется придерживаться с 2,0 по этой причине.
Я предлагаю, чтобы Вы перешли непосредственно в 3,5, потому что Вы будете меньше далеко (в будущем... через 3-5 лет) для изменения на другую версию платформы. Если в 5-летнем .NET будет в версии 5, то переход будет меньшим, чтобы сделать. Так, VB6 к 3,5 - то, что я предлагаю Вас.
Размер платформы не очень высок, меньше чем 60 megs... не грандиозное предприятие теперь, я думаю.
Если требуется использовать в своих интересах LINQ, то пойдите для 3,5! Я нахожу, что нет большего количества 'объема' при использовании его сам, но если Вы не хотите использовать LINQ, затем любой в порядке.
Я предложил бы, чтобы Вы пошли прямо с Visual Studio, 2008 и .net 3.5 sp1, 2.0 являются основанием 3,5, и можно легко начать использовать 2.0 и затем начать использовать 3,5 технических возможности.
Кроме того, 3,5 SP1 также приносят тонкие настройки к 2,0 платформам, которые хороши иметь.
.NET 3.5 является.NET 2.0 + больше библиотек и расширений, таким образом, да, установка больше. По-моему, однако это в значительной степени стоит дополнительного объема из-за дополнительного материала, который это дает Вам.
Выезд LINQBridge: http://www.albahari.com/nutshell/linqbridge.aspx
Добавление поддержки LINQ .net 2 (.net 3.5 все еще использует CLR 2.0).
Время выполнения.Net 3.5 является ~50Mb. 2,0 времени выполнения являются ~23Mb.
Но если Вы управляете развертыванием или установкой, которая действительно не должна быть проблемой. Это особенно верно для 'клиентов' по сравнению с 'клиентами', и клиент слова включает и продолжающиеся, личные отношения. Если это прибывает в него, отправьте им CD. Затем что-либо менее чем 700 МБ все одинаково.
Не устанавливает.NET 3.5 только для сохранения некоторых Мбит действительно что намного более важный что, получая огромное увеличение производительности с LINQ и другой.NET 3,5 функции?
Почему начинаются позади в технологии?
Если это - приложение VB6, необходимо проверить, на каких версиях Windows приложение в настоящее время используется, и выберите версию .NET соответственно. AFAIK 3.5 не работает на W2K.