Вкратце: делаю приложение - электронную книгу (платформа андроида), текст вывожу подготовленными html-файлами. Решил сделать настройку размера шрифта, для этого на кнопку забацал вот такой код:
form1.Memo1.Lines.LoadFromFile(TPath.Combine(TPath.GetDocumentsPath, 'my.css'), TEncoding.ANSI); \\гружу таблицу стилей
form1.Memo1.Text:=StringReplace((form1.Memo1.Text), ('font-size: '+inttostr(old_size_font)), 'font-size: '+inttostr(new_size_font), [rfReplaceAll, rfIgnoreCase]); \\ таким макаром меняю размер шрифта
form1.Memo1.Lines.SaveToFile(TPath.Combine(TPath.GetDocumentsPath, 'my.css'), TEncoding.ANSI); \\гружу обратно
form1.WebBrowser1.Reload; \\ перезапускаю страницу
код исправно работает, по нажатию все меняется, опубликовал даже в гугл-плее приложение, но взяв еще один телефон для теста - замечаю что при нажатии на кнопку на нём ничего не происходит. Все проверив понимаю, что код работает, запись в стили идет, даже браузер перезапускает страницу - но использует старый стиль. Вот если выйти из приложения и запустить его снова - то все будет нормально, стиль будет измененный.
Предположил что дело в кеше браузера, ставил в самом TWebBrowser- EnableCachng в false, вставлял теги в страницы типа:
Вопрос
CyberStorm
Вкратце: делаю приложение - электронную книгу (платформа андроида), текст вывожу подготовленными html-файлами. Решил сделать настройку размера шрифта, для этого на кнопку забацал вот такой код:
form1.Memo1.Lines.LoadFromFile(TPath.Combine(TPath.GetDocumentsPath, 'my.css'), TEncoding.ANSI); \\гружу таблицу стилей
form1.Memo1.Text:=StringReplace((form1.Memo1.Text), ('font-size: '+inttostr(old_size_font)), 'font-size: '+inttostr(new_size_font), [rfReplaceAll, rfIgnoreCase]); \\ таким макаром меняю размер шрифта
form1.Memo1.Lines.SaveToFile(TPath.Combine(TPath.GetDocumentsPath, 'my.css'), TEncoding.ANSI); \\гружу обратно
form1.WebBrowser1.Reload; \\ перезапускаю страницу
код исправно работает, по нажатию все меняется, опубликовал даже в гугл-плее приложение, но взяв еще один телефон для теста - замечаю что при нажатии на кнопку на нём ничего не происходит. Все проверив понимаю, что код работает, запись в стили идет, даже браузер перезапускает страницу - но использует старый стиль. Вот если выйти из приложения и запустить его снова - то все будет нормально, стиль будет измененный.
Предположил что дело в кеше браузера, ставил в самом TWebBrowser- EnableCachng в false, вставлял теги в страницы типа:
<meta http-equiv="cache-control" content="no-cache" />
<meta http-equiv="pragma" content="no-cache" />
<meta http-equiv="expires" content="-1" />
Но, отчего-то безрезультатно.
Ссылка на комментарий
2 ответа на этот вопрос
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.