Способ и устройство для управления вращением экрана
METHOD AND DEVICE FOR SCREEN ROTATION CONTROL

ПЕРЕКРЕСТНАЯ ССЫЛКА НА РОДСТВЕННЫЕ ЗАЯВКИ
[0001] По данной заявке испрашивается приоритет согласно заявке на патент Китая 201310184731.1, поданной 17 мая 2013 года, содержание которой целиком включено в состав настоящей заявки посредством ссылки.
ОБЛАСТЬ ТЕХНИКИ
[0002] Настоящее изобретение относится к области мобильных терминалов, а более конкретно, - к способу управления вращением экрана, а также к устройствам, реализующим этот способ.
ПРЕДПОСЫЛКИ СОЗДАНИЯ ИЗОБРЕТЕНИЯ
[0003] В настоящее время в повседневной жизни возрастает потребность в таких устройствах как мобильные телефоны, планшетные компьютеры и другие мобильные терминалы, позволяющие просматривать фотографии, подключаться к сети Интернет, запускать игровые программы и выполнять другие функции.
[0004] Для повышения комфортности пользовательского интерфейса в мобильный терминал обычно встраивается датчик гравитации, с помощью которого можно определить текущее положение терминала с использованием следующей логической схемы: если мобильный терминал позиционируется в стандартном или близком к стандартному положении (то есть экран мобильного терминала позиционируется перпендикулярно горизонтальной плоскости), то экран представляет собой прямой вертикальный экран, а при вращении мобильного терминала экран вращается соответственно, в результате чего направление отображения экрана перемещается в левую горизонтальную позицию, перевернутую вертикальную позицию или в правую горизонтальную позицию.
[0005] Например, если пользователь просматривает снимок, сделанный при расположении терминала в горизонтальной позиции, то для повышения степени использования экрана этот снимок может отображаться горизонтально в полноэкранном режиме путем вращения мобильного телефона.
[0006] Однако, поскольку пользователь в момент просмотра не всегда удерживает экран мобильного терминала в вертикальном положении, при использовании стандартного способа вращения экрана часто возникает, например, следующая проблема: если пользователь просматривает изображение, лежа на кровати, и при этом располагает мобильный телефон в горизонтальном положении, то экран мобильного телефона вращается, хотя фактически это не требуется пользователю.
[0007] Таким образом, согласно действующим правилам, вращение экрана выполняется в виде фиксированного набора положений в предположении, что пользователь стандартно просматривает изображение на экране в вертикальном положении, что часто приводит к нежелательному вращению экрана мобильного терминала и влияет на удобство пользовательского интерфейса.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
[0008] В рамках вариантов раскрытия настоящего изобретения предлагаются способ и устройства для управления вращением экрана, которые могут определить необходимость вращения экрана путем сравнения положений мобильного телефона с целью устранения нежелательного вращения отображения экрана и улучшения пользовательского интерфейса.
[0009] В соответствии с первым аспектом вариантов раскрытия настоящего изобретения предлагается способ управления вращением экрана, включающий:
[0010] если экран мобильного терминала переходит в режим полноэкранного отображения, фиксацию направления отображения экрана мобильного терминала и получение начального положения мобильного терминала;
[0011] контроль фактического положения мобильного терминала в режиме реального времени и
[0012] определение направления вращения экрана мобильного терминала путем сравнения положения в реальном времени и начального положения.
[0013] В предпочтительном варианте начальное положение или положение в реальном времени выражается с помощью компонентов гравитационного ускорения мобильного терминала в направлениях X и Y; и
[0014] получение начального положения мобильного терминала выполняется путем
[0015] получения и регистрации компонентов Х0 и Y0 гравитационного ускорения мобильного терминала в направлениях X и Y и определения начальной позиции мобильного терминала в соответствии со значениями Х0 и Y0,
[0016] при этом, если мобильный терминал расположен горизонтально, направление X является направлением по горизонтали в правую сторону вдоль мобильного терминала, а направление Y является направлением по горизонтали вперед вдоль мобильного терминала.
[0017] В предпочтительном варианте контроль фактического положения мобильного терминала в режиме реального времени выполняется путем
[0018] контроля компонентов Х1 и Y1 гравитационного ускорения мобильного терминала в направлениях X и Y в режиме реального времени и
[0019] определения положения мобильного терминала в режиме реального времени в соответствии со значениями Х1 и Y1.
[0020] В предпочтительном варианте после получения начального положения мобильного терминала способ также включает:
[0021] определение значения коррекции для идентификатора стиля компоновки экрана мобильного терминала в соответствии с начальным положением мобильного терминала,
[0022] при этом идентификатор стиля компоновки экрана сконфигурирован для идентификации направления отображения экрана мобильного терминала, а к направлениям отображения экрана мобильного терминала относятся экран в прямой вертикальной позиции, экран в левой горизонтальной позиции, экран в перевернутой вертикальной позиции и экран в правой горизонтальной позиции.
[0023] В предпочтительном варианте определение направления отображения экрана мобильного терминала в режиме реального времени путем сравнения положения в реальном времени и начального положения выполняется путем
[0024] определения идентификатора стиля компоновки экрана мобильного терминала в соответствии с положением в реальном времени;
[0025] коррекции идентификатора стиля компоновки экрана мобильного терминала в соответствии со значением коррекции для получения скорректированного идентификатора стиля компоновки экрана и
[0026] вращения направления экрана мобильного терминала в соответствии с направлением, идентифицированным скорректированным идентификатором стиля компоновки экрана, если скорректированный идентификатор стиля компоновки экрана отличается от идентификатора стиля компоновки экрана, предшествовавшего коррекции.
[0027] В соответствии со вторым аспектом вариантов раскрытия настоящего изобретения предлагается устройство для управления вращением экрана, содержащее:
[0028] модуль получения информации о положении, сконфигурированный для фиксации направления отображения экрана мобильного терминала и получения начального положения мобильного терминала, если экран мобильного терминала переходит в режим полноэкранного отображения;
[0029] модуль контроля, сконфигурированный для контроля фактического положения мобильного терминала в режиме реального времени; и
[0030] модуль управления, сконфигурированный для определения направления вращения экрана мобильного терминала путем сравнения положения в реальном времени и начального положения.
[0031] В предпочтительном варианте начальное положение или положение в реальном времени выражается с помощью компонентов гравитационного ускорения мобильного терминала в направлениях X и Y; и
[0032] модуль получения информации о положении содержит:
[0033] блок фиксации, сконфигурированный для фиксации направления отображения экрана мобильного терминала в тот момент, когда экран мобильного терминала переходит в режим полноэкранного отображения; и
[0034] блок получения информации о положении, сконфигурированный для получения и регистрации компонентов Х0 и Y0 гравитационного ускорения мобильного терминала в направлениях X и Y и определения начальной позиции мобильного терминала в соответствии со значениями Х0 и Y0,
[0035] при этом, если мобильный терминал расположен горизонтально, направление X является направлением по горизонтали в правую сторону вдоль мобильного терминала, а направление Y является направлением по горизонтали вперед вдоль мобильного терминала.
[0036] В предпочтительном варианте модуль контроля содержит:
[0037] блок получения компонентов гравитационного ускорения, сконфигурированный для контроля компонентов Х1 и Y1 гравитационного ускорения мобильного терминала в направлениях X и Y в режиме реального времени; и
[0038] блок определения положения в реальном времени, сконфигурированный для определения положения мобильного терминала в режиме реального времени в соответствии со значениями Х1 и Y1.
[0039] В предпочтительном варианте устройство также содержит: [0040] модуль получения значения коррекции, сконфигурированный для определения значения коррекции для идентификатора стиля компоновки экрана мобильного терминала в соответствии с начальным положением мобильного терминала после того, как модуль получения информации о положении получает информацию о начальном положении мобильного терминала,
[0041] при этом идентификатор стиля компоновки экрана сконфигурирован для идентификации направления отображения экрана мобильного терминала, и к направлениям отображения экрана мобильного терминала относятся экран в прямой вертикальной позиции, экран в левой горизонтальной позиции, экран в перевернутой вертикальной позиции и экран в правой горизонтальной позиции.
[0042] В предпочтительном варианте модуль управления содержит:
[0043] блок получения идентификатора, сконфигурированный для определения идентификатора стиля компоновки экрана мобильного терминала в соответствии с положением в реальном времени;
[0044] блок коррекции, сконфигурированный для коррекции идентификатора стиля компоновки экрана мобильного терминала в соответствии со значением коррекции для получения скорректированного идентификатора стиля компоновки экрана; и
[0045] блок вращения, сконфигурированный для вращения направления экрана мобильного терминала в соответствии с направлением, идентифицированным скорректированным идентификатором стиля компоновки экрана, если скорректированный идентификатор стиля компоновки экрана отличается от идентификатора стиля компоновки экрана, предшествовавшего коррекции.
[0046] В соответствии с третьим аспектом вариантов раскрытия настоящего изобретения предлагается устройство, содержащее:
[0047] один или более процессоров;
[0048] память;
[0049] экран дисплея и
[0050] один или более модулей, хранимых в памяти и сконфигурированных для исполнения одним или более процессорами, при этом один или более модулей выполняют следующие функции:
[0051] если экран дисплея переходит в режим полноэкранного отображения, фиксацию направления отображения экрана дисплея и получение начального положения устройства;
[0052] контроль фактического положения устройства в режиме реального времени и
[0053] определение направления вращения экрана дисплея путем сравнения положения в реальном времени и начального положения.
[0054] Следует принимать во внимание, что как предшествующее общее описание, так и последующее подробное описание представлено только в качестве примера и для разъяснения сути изобретения и не ограничивает его объем.
[0055] Путем реализации технических решений, соответствующих вариантам раскрытия настоящего изобретения, достигаются следующие полезные эффекты.
[0056] С помощью способа и устройств для вращения экрана, предложенных в рамках вариантов настоящего изобретения, в качестве начального положения принимается положение мобильного терминала в момент перехода экрана в режим полноэкранного отображения, и в процессе изменения положения мобильного терминала в реальном времени с учетом начального положения, используемого в качестве опорного, определяется, следует ли вращать направление отображения экрана. Поскольку согласно настоящему изобретению опорное положение для вращения экрана не зафиксировано в вертикальном состоянии, а зависит от положения при переходе экрана в режим полноэкранного отображения, то, таким образом, можно устранить нежелательное вращение направления отображения экрана, повысить эффективность работы пользователя и сделать ее более удобной.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0057] Прилагаемые чертежи, которые включены в состав этого описания и составляют одну из его частей, иллюстрируют варианты осуществления, совместимые с настоящим изобретением, и совместно с описанием помогают разобраться в принципах изобретения.
[0058] На фиг. 1 показан алгоритм выполнения способа управления вращением экрана в соответствии с примером осуществления настоящего изобретения.
[0059] На фиг. 2 показан алгоритм выполнения способа управления вращением экрана в соответствии с другим примером осуществления настоящего изобретения.
[0060] На фиг. 3 в соответствии с примером осуществления настоящего изобретения показана схема положения мобильного телефона, в которой экран находится в прямой вертикальной позиции.
[0061] На фиг. 4 в соответствии с примером осуществления настоящего изобретения показана схема положения мобильного телефона, в которой экран находится в левой горизонтальной позиции.
[0062] На фиг. 5 в соответствии с примером осуществления настоящего изобретения показана схема положения мобильного телефона, в которой экран находится в правой горизонтальной позиции.
[0063] На фиг. 6 в соответствии с примером осуществления настоящего изобретения показана схема положения мобильного телефона, в которой экран находится в перевернутой вертикальной позиции.
[0064] На фиг. 7 в соответствии с примером осуществления настоящего изобретения показана блок-схема получения начальной позиции мобильного телефона в том случае, если пользователь располагается лежа в правой горизонтальной позиции и осуществляет переход в режим просмотра крупномасштабного изображения.
[0065] На фиг. 8 в соответствии с примером осуществления настоящего изобретения показана схема обработки процесса вращения направления экрана в том случае, если мобильный телефон первоначально переходит в полноэкранный режим.
[0066] На фиг. 9 согласно примеру осуществления настоящего изобретения показана схема настройки направления отображения экрана мобильного телефона для перехода к экрану в левой горизонтальной позиции, если положение мобильного телефона в реальном времени соответствует экрану в прямой вертикальной позиции.
[0067] На фиг. 10 согласно примеру осуществления настоящего изобретения показана схема настройки направления отображения экрана мобильного телефона для перехода к экрану в правой горизонтальной позиции, если положение мобильного телефона в реальном времени соответствует экрану в перевернутой вертикальной позиции.
[0068] На фиг. 11 показана блок-схема устройства для управления вращением экрана в соответствии с примером осуществления настоящего изобретения.
[0069] На фиг. 12 показана блок-схема модуля получения информации о положении в устройстве для управления вращением экрана в соответствии с примером осуществления настоящего изобретения.
[0070] На фиг. 13 показана блок-схема модуля контроля в устройстве для управления вращением экрана в соответствии с примером осуществления настоящего изобретения.
[0071] На фиг. 14 показана блок-схема другого устройства для управления вращением экрана в соответствии с примером осуществления настоящего изобретения; и
[0072] на фиг. 15 показана блок-схема модуля управления в устройстве для управления вращением экрана в соответствии с примером осуществления настоящего изобретения.
ПОДРОБНОЕ ОПИСАНИЕ
[0073] Ниже более подробно описываются конкретные варианты осуществления способа и устройств для управления вращением экрана, реализуемые согласно примерам раскрытия настоящего изобретения.
[0074] Вначале, как показано на фиг. 1, согласно настоящему изобретению предлагается способ управления вращением экрана, включающий описываемые ниже шаги.
[0075] На шаге S101, если экран мобильного терминала переходит в режим полноэкранного отображения, направление отображения экрана мобильного терминала фиксируется и формируется информация о начальном положении мобильного терминала.
[0076] В предпочтительном варианте осуществления начальное положение или положение мобильного терминала в реальном времени выражается с помощью компонентов гравитационного ускорения мобильного терминала в направлениях X и Y.
[0077] В предпочтительном варианте шаг S101 может быть выполнен путем:
[0078] получения и регистрации компонентов Х0 и Y0 гравитационного ускорения мобильного терминала в направлениях X и Y и определения начальной позиции мобильного терминала в соответствии со значениями Х0 и Y0,
[0079] при этом, если мобильный терминал расположен горизонтально, направление X является направлением по горизонтали в правую сторону вдоль мобильного терминала, а направление Y является направлением по горизонтали вперед вдоль мобильного терминала.
[0080] В предпочтительном варианте после шага S101 способ может также включать:
[0081] определение значения коррекции для идентификатора стиля компоновки экрана мобильного терминала в соответствии с начальным положением мобильного терминала,
[0082] при этом идентификатор стиля компоновки экрана сконфигурирован для идентификации направления отображения экрана мобильного терминала, и к направлениям отображения экрана мобильного терминала относятся экран в прямой вертикальной позиции, экран в левой горизонтальной позиции, экран в перевернутой вертикальной позиции и экран в правой горизонтальной позиции.
[0083] На шаге S102 в режиме реального времени контролируется фактическое положение мобильного терминала.
[0084] В предпочтительном варианте шаг S102 может быть выполнен путем
[0085] контроля компонентов Х1 и Y1 гравитационного ускорения мобильного терминала в направлениях X и Y в режиме реального времени и
[0086] определения положения мобильного терминала в режиме реального времени в соответствии со значениями Х1 и Y1.
[0087] На шаге S103 определяется направление вращения экрана мобильного терминала путем сравнения положения в реальном времени и начального положения.
[0088] В предпочтительном варианте осуществления шаг S103 может быть выполнен путем
[0089] определения идентификатора стиля компоновки экрана мобильного терминала в соответствии с положением в реальном времени;
[0090] коррекции идентификатора стиля компоновки экрана мобильного терминала в соответствии со значением коррекции для получения скорректированного идентификатора стиля компоновки экрана и
[0091] вращения направления экрана мобильного терминала в соответствии с направлением, идентифицированным скорректированным идентификатором стиля компоновки экрана, если скорректированный идентификатор стиля компоновки экрана отличается от идентификатора стиля компоновки экрана, предшествовавшего коррекции.
[0092] С помощью способа вращения экрана, предложенного в рамках вариантов раскрытия настоящего изобретения, в качестве начального положения принимается положение мобильного терминала в момент перехода экрана в режим полноэкранного отображения, и в процессе изменения положения мобильного терминала в реальном времени с учетом начального положения, используемого в качестве опорного, определяется, следует ли вращать направление отображения экрана. Поскольку согласно настоящему изобретению опорное положение для вращения экрана не зафиксировано в вертикальном состоянии, а зависит от положения при переходе экрана в режим полноэкранного отображения, то, таким образом, можно устранить нежелательное вращение направления отображения экрана и повысить удобство работы пользователя.
[0093] Посредством варианта раскрытия настоящего изобретения также реализуется способ управления вращением экрана, с помощью которого можно избежать нежелательного вращения направления отображения экрана. Способ может быть реализован в среде операционной системы мобильного терминала, а также любым приложением, установленным на мобильном терминале.
[0094] Для простоты иллюстрации согласно настоящему варианту осуществления пользователь, например, просматривает изображение из альбома, хранящегося в мобильном телефоне. Как показано на фиг. 2, способ включает следующие шаги.
[0095] На шаге S201, если осуществляется переход в режим просмотра крупномасштабного изображения, то в качестве начального положения рассматривается текущее положение мобильного телефона.
[0096] В предпочтительном варианте реализации, согласно настоящему осуществлению, положение мобильного телефона в трехмерном пространстве выражается с помощью компонентов гравитационного ускорения в направлении осей X и Y, зарегистрированных датчиком гравитации.
[0097] В этом случае, если мобильный терминал расположен горизонтально, направление X является направлением по горизонтали в правую сторону вдоль мобильного терминала, направление Y является направлением по горизонтали вперед вдоль мобильного терминала, и направление X перпендикулярно направлению Y в горизонтальной плоскости.
[0098] Согласно варианту раскрытия настоящего изобретения существуют четыре положения, в которых может располагаться мобильный телефон:
[0099] экран в прямой вертикальной позиции, экран в левой горизонтальной позиции, экран в перевернутой вертикальной позиции и экран в правой горизонтальной позиции.
[00100] На фиг. 3-6 соответственно показаны четыре вида положения мобильного телефона.
[00101] Далее описываются средства получения информации о начальной позиции мобильного телефона, при этом, например, полученные компоненты гравитационного ускорения мобильного телефона в направлениях X и Y соответственно обозначаются как Х0 и Y0.
[00102] Если Х0>Р, положение мобильного телефона определяется как соответствующее экрану в левой горизонтальной позиции;
[00103] если Х0<-Р, положение мобильного телефона определяется как соответствующее экрану в правой горизонтальной позиции;
[00104] если Y0>Р, положение мобильного телефона определяется как соответствующее экрану в прямой вертикальной позиции;
[00105] если Y0<-Р, положение мобильного телефона определяется как соответствующее экрану в перевернутой вертикальной позиции.
2
[00106] При этом значение Р может выбираться опытным путем или устанавливаться в зависимости от требуемой точности оценки. Например, в настоящем осуществлении может использоваться значение 5 м/с.
[00107] Следует отметить, что согласно настоящему варианту осуществления положение мобильного телефона регистрируется, например, датчиком гравитации. В практических применениях настоящего решения текущая позиция мобильного телефона может определяться другими датчиками (такими как датчик ускорения, датчик направления и т.д.).
[00108] В дальнейшем приводится пример, в котором текущая позиция мобильного телефона определяется датчиком направления.
[00109] Датчик направления реализуется путем объединения с датчиком ускорения и может возвращать значение угла, обозначаемое как "вращение", при этом начальная позиция мобильного телефона может определяться значением "вращение" следующим образом:
[00110] а) если удовлетворяется соотношение:
вращение > = 0 && вращение < 45 || вращение > = 315 && вращение < 360, то положению мобильного телефона соответствует экран в прямой вертикальной позиции;
[00111] b) если удовлетворяется соотношение:
вращение > = 45 && вращение < 135,
то положению мобильного телефона соответствует экран в правой горизонтальной позиции;
[00112] с) если удовлетворяется соотношение:
вращение > = 135 && вращение < 225,
то положению мобильного телефона соответствует экран в перевернутой вертикальной позиции; и
[00113] d) если удовлетворяется соотношение:
вращение > = 225 && вращение < 315,
то положению мобильного телефона соответствует экран в левой горизонтальной позиции.
[00114] Согласно настоящему варианту осуществления, как показано на фиг. 7, если пользователь, например, располагается лежа в горизонтальном правом направлении и в этот момент касается изображения, для того чтобы отобразить его в крупном масштабе, то в качестве начального положения мобильного телефона может быть получен экран в правой горизонтальной позиции.
[00115] Как показано на фиг. 8, в начальном состоянии после перехода дисплейного экрана мобильного телефона в полноэкранный режим отображения выбранного изображения начальное направление отображения экрана мобильного телефона фиксируется без выполнения вращения.
[00116] Кроме того, данный вариант осуществления иллюстрируется на примере просмотра изображения. В практических применениях этот способ может использоваться для полноэкранного отображения других приложений, например:
[00117] для полноэкранных игр, просмотра веб-страниц в полноэкранном формате и т.д.
[00118] Соответственно, шаг S201 может быть выполнен путем
[00119] получения текущего положения мобильного телефона в качестве начального положения при запуске игровой программы или
[00120] получения текущего положения мобильного телефона в качестве начального положения, если активизирован полноэкранный режим просмотра веб-страницы.
[00121] На шаге S202 определяется значение коррекции для идентификатора стиля компоновки экрана в соответствии с начальным положением мобильного телефона.
[00122] В предпочтительном варианте, например в среде операционной системы Android,
[00123] указанный выше идентификатор стиля компоновки экрана (mCurrentOrientation) сконфигурирован для представления структуры направления отображения экрана. Операционная система мобильного телефона определяет ориентацию изображения на экране путем считывания идентификатора стиля компоновки экрана.
[00124] Следует отметить, что, согласно настоящему варианту осуществления, в качестве опорного направления отображения экрана принимается прямое направление экрана мобильного телефона.
[00125] Указанное выше значение коррекции используется для коррекции идентификатора стиля компоновки экрана с целью устранения нежелательного вращения отображения экрана на дисплее мобильного телефона.
[00126] Например, могут быть выполнены следующие установки:
[00127] если начальное положение мобильного телефона - это экран в прямой вертикальной позиции, то mCurrentOrientation = 0, и значение коррекции - mFixOrientation = 0;
[00128] если начальное положение мобильного телефона - это экран в правой горизонтальной позиции, то mCurrentOrientation = 1, и значение коррекции - mFixOrientation = 3;
[00129] если начальное положение мобильного телефона - это экран в перевернутой вертикальной позиции, то mCurrentOrientation = 2, и значение коррекции - mFixOrientation = 2; и
[00130] если начальное положение мобильного телефона - это экран в левой горизонтальной позиции, то mCurrentOrientation = 3, и значение коррекции - mFixOrientation = 1.
[00131] На шаге S203 в режиме реального времени контролируется положение мобильного терминала в реальном времени.
[00132] В предпочтительном варианте шаг S203 может быть выполнен путем
[00133] получения компонентов Х1 и Y1 гравитационного ускорения мобильного телефона в направлениях X и Y в течение предварительно установленного периода времени (1 мс, например) и определения положения мобильного терминала в реальном времени в соответствии со значениями Х1 и Y1.
[00134] При этом способ определения положения мобильного телефона в реальном времени аналогичен способу определения начального положения мобильного телефона, который использовался на шаге S201, и далее повторно не описывается.
[00135] На шаге S204 вычисляется идентификатор направления отображения экрана в реальном времени, соответствующий положению мобильного телефона в реальном времени, и этот идентификатор направления отображения экрана в реальном времени корректируется с использованием значения коррекции для получения скорректированного идентификатора направления отображения экрана в реальном времени.
[00136] В предпочтительном варианте согласно существующему уровню техники для каждого положения мобильного телефона в реальном времени система может выполнить вычисления для получения идентификатора направления отображения экрана, соответствующего положению в реальном времени, и осуществить управление направлением отображения экрана в соответствии с этим идентификатором. Однако, поскольку пользователь не всегда просматривает экран в вертикальном положении, на существующем уровне техники может выполняться нежелательное вращение. Таким образом, на этом шаге выполняется коррекция с использованием значения коррекции, благодаря чему можно устранить нежелательное вращение.
[00137] В предпочтительном варианте идентификатор направления отображения экрана корректируется с помощью следующего выражения:
[00138] mCurrentOrientation = (mCurrentOrientation + mFixOrientation) % 4,
[00139] при этом в левой части выражения mCurrentOrientation обозначает скорректированный идентификатор направления отображения экрана в реальном времени, а в правой части выражения mCurrentOrientation обозначает идентификатор направления отображения экрана в реальном времени, полученный системой, mFixOrientation - значение коррекции, полученное в соответствии с начальным положением мобильного телефона.
[00140] На шаге S205 определяется текущее направление отображения экрана в соответствии со скорректированным идентификатором направления отображения экрана в реальном времени.
[00141] В предпочтительном варианте скорректированный идентификатор направления отображения экрана в реальном времени передается в систему, и система может получить информацию о текущем направлении отображения экрана в соответствии со скорректированным идентификатором направления отображения экрана в реальном времени.
[00142] Если скорректированный идентификатор направления отображения экрана в реальном времени не соответствует направлению, вычисленному при нахождении мобильного телефона в предшествующем положении, то направление экрана регулируется путем вращения направления отображения экрана, соответствующего скорректированному идентификатору направления отображения экрана в реальном времени.
[00143] Если скорректированный идентификатор направления отображения экрана в реальном времени соответствует направлению, вычисленному при нахождении мобильного телефона в предшествующем положении, то направление отображения экрана сохраняется, и вращение не осуществляется.
[00144] Как показано на фиг. 9, если положению мобильного телефона в реальном времени соответствует экран в прямой вертикальной позиции, то направление отображения экрана мобильного телефона регулируется таким образом, чтобы отображался экран в левой горизонтальной позиции (с учетом того, что прямое направление экрана мобильного телефона является опорным).
[00145] Как показано на фиг. 10, если положению мобильного телефона в реальном времени соответствует экран в перевернутой вертикальной позиции, то направление отображения экрана мобильного телефона регулируется таким образом, чтобы отображался экран в правой горизонтальной позиции (с учетом того, что прямое направление экрана мобильного телефона является опорным).
[00146] Очевидно, что если пользователь на практике просматривает изображения лежа в правом направлении, то показанное на фиг. 9 и 10 вращение в наибольшей степени подходит для наилучшего восприятия пользователем.
[00147] В предпочтительном варианте после шага S206 способ может также включать:
[00148] отмену установки начального положения мобильного телефона при выходе пользователя из режима крупномасштабного отображения изображения. Если пользователь снова переходит в режим крупномасштабного отображения изображения, то определяется новое начальное положение мобильного телефона.
[00149] При этом нажатие кнопки Home (возврат) не рассматривается как выход из режима отображения крупномасштабного изображения. Кнопка Home обычно служит для временного прерывания просмотра изображения, поэтому при последующем переходе в режим крупномасштабного отображения следует восстановить предшествующие параметры пользовательского интерфейса без расчета значения коррекции посредством повторного получения начального положения, то есть в этом случае все еще может использоваться предшествующее значение коррекции.
[00150] С помощью способа вращения экрана, предложенного в рамках вариантов раскрытия настоящего изобретения, путем определения в качестве начального положения мобильного телефона положения в момент перехода в режим полноэкранного отображения, вычисления значения коррекции для каждого начального положения и выполнения коррекции идентификатора направления отображения экрана мобильного телефона, предоставляемого системой, можно предотвратить нежелательное вращение экрана и улучшить пользовательский интерфейс.
[00151] Как показано на фиг. 11, согласно варианту раскрытия настоящего изобретения предлагается устройство для управления вращением экрана, содержащее:
[00152] модуль 301 получения информации о положении, сконфигурированный для фиксации направления отображения экрана мобильного терминала и получения начального положения мобильного терминала, если экран мобильного терминала переходит в режим полноэкранного отображения;
[00153] модуль 302 контроля, сконфигурированный для контроля фактического положения мобильного терминала в режиме реального времени; и
[00154] модуль 303 управления, сконфигурированный для определения направления вращения экрана мобильного терминала путем сравнения положения в реальном времени и начального положения.
[00155] В предпочтительном варианте начальное положение или положение в реальном времени выражается с помощью компонентов гравитационного ускорения мобильного терминала в направлениях X и Y.
[00156] Как показано на фиг. 12, модуль 301 получения информации о положении содержит:
[00157] блок 3011 фиксации, сконфигурированный для фиксации направления отображения экрана мобильного терминала в тот момент, когда экран мобильного терминала переходит в режим полноэкранного отображения; и
[00158] блок 3012 получения информации о положении, сконфигурированный для получения и регистрации компонентов Х0 и Y0 гравитационного ускорения мобильного терминала в направлениях X и Y и определения начальной позиции мобильного терминала в соответствии со значениями Х0 и Y0,
[00159] при этом, если мобильный терминал расположен горизонтально, направление X является направлением по горизонтали в правую сторону вдоль мобильного терминала, а направление Y является направлением по горизонтали вперед вдоль мобильного терминала.
[00160] В предпочтительном варианте, как показано на фиг. 13, модуль 302 контроля содержит:
[00161] блок 3021 получения компонентов гравитационного ускорения, сконфигурированный для контроля компонентов Х1 и Y1 гравитационного ускорения мобильного терминала в направлениях X и Y в режиме реального времени; и
[00162] блок 3022 определения положения в реальном времени, сконфигурированный для определения положения мобильного терминала в режиме реального времени в соответствии со значениями Х1 и Y1.
[00163] В предпочтительном варианте, как показано на фиг. 14, устройство также содержит:
[00164] модуль 304 получения значения коррекции, сконфигурированный для определения значения коррекции для идентификатора стиля компоновки экрана мобильного терминала в соответствии с начальным положением мобильного терминала после того, как модуль 301 получения информации о положении получит информацию о начальном положении мобильного терминала,
[00165] при этом идентификатор стиля компоновки экрана сконфигурирован для идентификации направления отображения экрана мобильного терминала, и к направлениям отображения экрана мобильного терминала относятся экран в прямой вертикальной позиции, экран в левой горизонтальной позиции, экран в перевернутой вертикальной позиции и экран в правой горизонтальной позиции.
[00166] В предпочтительном варианте, как показано на фиг. 15, модуль 303 управления содержит:
[00167] блок 3031 получения идентификатора, сконфигурированный для определения идентификатора стиля компоновки экрана мобильного терминала в соответствии с положением в реальном времени;
[00168] блок 3032 коррекции, сконфигурированный для коррекции идентификатора стиля компоновки экрана мобильного терминала в соответствии со значением коррекции для получения скорректированного идентификатора стиля компоновки экрана; и
[00169] блок 3033 вращения, сконфигурированный для вращения направления экрана мобильного терминала в соответствии с направлением, идентифицированным скорректированным идентификатором стиля компоновки экрана, если скорректированный идентификатор стиля компоновки экрана отличается от идентификатора стиля компоновки экрана, предшествовавшего коррекции.
[00170] С помощью устройства вращения экрана, предложенного в рамках вариантов раскрытия настоящего изобретения, в качестве начального положения принимается положение мобильного терминала в момент перехода экрана в режим полноэкранного отображения, и в процессе изменения положения мобильного терминала в реальном времени с учетом начального положения, используемого в качестве опорного, определяется, следует ли вращать направление отображения экрана. Поскольку согласно настоящему изобретению опорное положение для вращения экрана не зафиксировано в вертикальном состоянии, а зависит от положения при переходе экрана в режим полноэкранного отображения, то, таким образом, можно устранить нежелательное вращение направления отображения экрана и улучшить восприятие пользователя.
[00171] Кроме того, в рамках варианта раскрытия настоящего изобретения предлагается устройство, содержащее:
[00172] один или более процессоров;
[00173] память;
[00174] экран дисплея и
[00175] один или более модулей, хранимых в памяти и сконфигурированных для исполнения одним или более процессорами, при этом один или более модулей выполняют следующие функции:
[00176] если экран дисплея переходит в режим полноэкранного отображения, фиксацию направления отображения экрана дисплея и получение начального положения устройства;
[00177] контроль фактического положения устройства в режиме реального времени и
[00178] определение направления вращения экрана дисплея путем сравнения положения в реальном времени и начального положения.
[00179] В предпочтительном варианте начальное положение или положение устройства в реальном времени выражается с помощью компонентов гравитационного ускорения устройства в направлениях X и Y; и
[00180] получение начального положения устройства выполняют путем
[00181] получения и регистрации компонентов Х0 и Y0 гравитационного ускорения устройства в направлениях X и Y и определения начальной позиции устройства в соответствии со значениями Х0 и Y0,
[00182] при этом, если устройство расположено горизонтально, направление X является направлением по горизонтали в правую сторону вдоль устройства, а направление Y является направлением по горизонтали вперед вдоль устройства.
[00183] В предпочтительном варианте контроль фактического положения устройства в режиме реального времени выполняется путем
[00184] контроля компонентов Х1 и Y1 гравитационного ускорения устройства в направлениях X и Y в режиме реального времени и
[00185] определения положения устройства в режиме реального времени в соответствии со значениями Х1 и Y1.
[00186] В предпочтительном варианте один или более модулей также могут выполнять следующие функции:
[00187] определение значения коррекции для идентификатора стиля компоновки экрана устройства в соответствии с начальным положением устройства после получения начального положения устройства,
[00188] при этом идентификатор стиля компоновки экрана сконфигурирован для идентификации направления отображения экрана устройства, и к направлениям отображения экрана устройства относятся экран в прямой вертикальной позиции, экран в левой горизонтальной позиции, экран в перевернутой вертикальной позиции и экран в правой горизонтальной позиции.
[00189] В предпочтительном варианте определение направления вращения экрана устройства в режиме реального времени путем сравнения положения в реальном времени и начального положения выполняется путем
[00190] определения идентификатора стиля компоновки экрана устройства в соответствии с положением в реальном времени;
[00191] корректировки идентификатора стиля компоновки экрана устройства в соответствии со значением коррекции для получения скорректированного идентификатора стиля компоновки экрана и
[00192] вращения направления экрана устройства в соответствии с направлением, идентифицированным скорректированным идентификатором стиля компоновки экрана, если скорректированный идентификатор стиля компоновки экрана отличается от идентификатора стиля компоновки экрана, предшествовавшего коррекции.
[00193] Устройство, предложенное в рамках вариантов раскрытия настоящего изобретения, реализуется таким образом, что в качестве начального положения принимается положение устройства в момент перехода экрана в режим полноэкранного отображения, и в процессе изменения положения устройства в реальном времени с учетом начального положения, используемого в качестве опорного, определяется, следует ли вращать направление отображения экрана. Поскольку согласно настоящему изобретению опорное положение для вращения экрана не зафиксировано в вертикальном состоянии, а зависит от положения при переходе экрана в режим полноэкранного отображения, то, таким образом, можно устранить нежелательное вращение направления отображения экрана и улучшить интерфейс пользователя.
[00194] Кроме того, согласно варианту раскрытия настоящего изобретения предлагается энергонезависимый носитель информации, предназначенный для хранения одной или более программ, которые в случае применения в устройстве, оснащенном сенсорным экраном, могут обеспечить выполнение устройством указанных ниже функций.
[00195] В предпочтительном варианте начальное положение или положение устройства в реальном времени выражается с помощью компонентов гравитационного ускорения устройства в направлениях X и Y; и
[00196] получение начального положения устройства выполняется путем
[00197] получения и регистрации компонентов Х0 и Y0 гравитационного ускорения устройства в направлениях X и Y и определения начальной позиции устройства в соответствии со значениями Х0 и Y0,
[00198] при этом, если устройство расположено горизонтально, направление X является направлением по горизонтали в правую сторону вдоль устройства, а направление Y является направлением по горизонтали вперед вдоль устройства.
[00199] В предпочтительном варианте контроль фактического положения устройства в режиме реального времени выполняется путем
[00200] контроля компонентов Х1 и Y1 гравитационного ускорения устройства в направлениях X и Y в режиме реального времени и
[00201] определения положения устройства в режиме реального времени в соответствии со значениями Х1 и Y1.
[00202] В предпочтительном варианте один или более модулей также могут выполнять следующие функции:
[00203] определение значения коррекции для идентификатора стиля компоновки экрана устройства в соответствии с начальным положением устройства после получения начального положения устройства,
[00204] при этом идентификатор стиля компоновки экрана сконфигурирован для идентификации направления отображения экрана устройства, и к направлениям отображения экрана устройства относятся экран в прямой вертикальной позиции, экран в левой горизонтальной позиции, экран в перевернутой вертикальной позиции и экран в правой горизонтальной позиции.
[00205] В предпочтительном варианте определение направления вращения экрана устройства в режиме реального времени путем сравнения положения в реальном времени и начального положения выполняется путем
[00206] определения идентификатора стиля компоновки экрана устройства в соответствии с положением в реальном времени;
[00207] коррекции идентификатора стиля компоновки экрана устройства в соответствии со значением коррекции для получения скорректированного идентификатора стиля компоновки экрана и
[00208] вращения направления экрана устройства в соответствии с направлением, идентифицированным скорректированным идентификатором стиля компоновки экрана, если скорректированный идентификатор стиля компоновки экрана отличается от идентификатора стиля компоновки экрана, предшествовавшего коррекции.
[00209] С помощью носителя информации, предложенного в рамках вариантов раскрытия настоящего изобретения и используемого в устройстве, оснащенном экраном дисплея, в качестве начального положения принимается положение мобильного терминала в момент перехода экрана в режим полноэкранного отображения, и в процессе изменения положения мобильного терминала в реальном времени с учетом начального положения, используемого в качестве опорного, определяется, следует ли вращать направление отображения экрана. Поскольку согласно настоящему изобретению опорное положение для вращения экрана не зафиксировано в вертикальном состоянии, а зависит от положения при переходе экрана в режим полноэкранного отображения, то, таким образом, можно устранить нежелательное вращение направления отображения экрана и сделать более удобной работу пользователя.
[00210] Специалисту в этой области техники из приведенного выше описания вариантов осуществления настоящего изобретения должно быть очевидно, что эти варианты могут быть реализованы с помощью аппаратного обеспечения или программного обеспечения, установленного на соответствующей аппаратной платформе. На основе такого понимания проблемы техническое решение вариантов раскрытия настоящего изобретения может быть осуществлено в виде программного изделия, которое может храниться на энергонезависимом носителе информации (таком как CD-ROM, флеш-диск или жесткий переносной диск и т.д.) и содержать ряд инструкций, позволяющих компьютерному устройству (такому как персональный компьютер, сервер или сетевое устройство и т.д.) реализовать способ, описанный в рамках вариантов раскрытия настоящего изобретения.
[00211] Специалистам в этой области техники должно быть понятно, что прилагаемые чертежи представляют собой только пояснительные схемы предпочтительных вариантов осуществления, и модули или процедуры, показанные на этих чертежах, не обязательно используются для осуществления настоящего изобретения.
[00212] Специалистам в этой области техники должно быть понятно, что модули, используемые в вариантах осуществления настоящего изобретения, могут распределяться в устройстве соответственно описаниям этих вариантов или могут определенным образом располагаться в одном или более устройствах, отличных от описанного устройства. Модули, используемые в осуществлении описанных выше вариантов осуществления, могут объединяться в одном модуле или могут распределяться по различным подмодулям.
[00213] Указанные выше порядковые номера вариантов раскрытия настоящего изобретения приведены только в целях описания и не должны рассматриваться как номера, определяющие приоритеты этих вариантов.
[00214] Очевидно, что специалисты в этой области техники могут внести различные изменения в варианты раскрытия настоящего изобретения без нарушения сущности и объема изобретения. Соответственно, если такие изменения и преобразования находятся в пределах, определяемых формулой изобретения, представленной в настоящей заявке, или эквивалентны им, то настоящая заявка охватывает такие изменения и преобразования.