Как решить проблему ореолов экрана в Kindle?
Я использую KRepaintManager.paintImmediately(root, true) из start() в моем основном классе, который расширяет AbstractKindlet для обновления экрана, но там все еще есть проблема с ореолами. При нажатии и выходе из меню - экран очищается. Мне интересно, что делает код после закрытия меню?
Как решить проблему ореолов устройства Kindle?
Код:
KPages pages = new KPages() {
/**
* A place holder serialization version ID
*/
private static final long serialVersionUID = 1L;
/** {@inheritDoc} */
public Insets getInsets() {
return new Insets(00, 20, 20, 20);
}
};
public static void flashScreen()
{
EventQueue.invokeLater(new Runnable(){
public void run(){
KRepaintManager.currentManager(pages).addDirtyRegion(pages, 0, 0, pages.getWidth(), pages.getHeight());
KRepaintManager.currentManager(pages).paintDirtyRegions(true);
}
});
}
Вызов flashScreen() при возврате, навигация вперед по KPages.
1 ответ
Решение
KRepaintManager.paintImmediately(root, true)
это правильный способ прошить весь экран - иногда вы можете получить артефакты, но вы ничего не можете сделать, чтобы предотвратить это. Удар Menu
Кнопка вообще обновит экран аналогично.