Попытайтесь обернуть это с post
вместо прямого вызова scrollTo
, что-то вроде этого:
textView.post(new Runnable() {
@Override
public void run() {
textView.scrollTo(0, textView.getLineCount());
}
});
Я знаю, что это не оптимальное решение, но можно также попытаться портировать dateJs библиотеку на .NET
Это обрабатывает вещи как сегодня; завтра; июль 2008; в следующую пятницу; в прошлом апреле; 07.08.2004; 04.06.2005; 20:15; 22:30:45; +5years
Мы разработали точно, что Вы ищете на внутреннем проекте. Мы думаем о том, чтобы обнародовать это, если существует достаточная потребность в нем. Смотрите на этот блог для получения дополнительной информации: http://precisionsoftwaredesign.com/blog.php.
DateTime. Синтаксический анализ () возьмет аргумент строки и попытается генерировать свой равный DateTime. Я немного ржав на нем, но это должно работать на любую строку даты, которую можно генерировать с DateTime. ToString ().
Можно также смотреть на DateTime. ParseExact (), который делает то же самое как Синтаксический анализ (), но позволяет Вам ограничивать возможные форматы для входной строки. Следующая ссылка должна выручить Вас с обоими, а также любыми другими функциями парсинга даты в платформе.
Я не знаю ничего, что можно использовать с платформой сегодня, которая позволит Вам делать это, но если Вы довольны проигрыванием вокруг с будущими битами, можно проверить Осло и сделать собственный текстовый DSL.
Эта статья показывает, как сделать точно, что Вы пытаетесь сделать:
http://www.infoq.com/articles/natural-language-date-dsl-oslo
Я создал эту библиотеку как часть работающего проекта. Он не совсем доработан, но если вам интересно, я могу поработать над ним и / или оформить лицензию для ваших нужд.
Я написал очень старую программу (с использованием Clipper, производной от DBASE), но ее код довольно удобочитаем.
http://www.jbooth-consulting.com/downloads/clipper/guessdate.zip
Может дать вам несколько идей, если вы захотите свернуть свой собственный ...