Переопределить подсказку EditText, когда ime в полноэкранном режиме? - PullRequest
0 голосов
/ 05 августа 2011

Могу ли я переопределить подсказку и отобразить другую подсказку, когда приложение находится в альбомном режиме, а EditText находится в полноэкранном режиме?

Например, у меня есть TextView (метка, скажем «Имя пользователя») иEditText (для ввода имени пользователя, с подсказкой «Обязательно»).Однако, когда приложение находится в альбомном режиме, а EditText - в полноэкранном режиме, было бы удобнее для пользователя предоставить более качественную подсказку - например, «Имя пользователя обязательно», чтобы пользователь знал, для чего предназначен EditText.

Есть ли в EditText метод, который проверяет, находится ли элемент в полноэкранном режиме?

[Я пытался просмотреть различные приложения, такие как Twitter - они либо не переопределяют подсказку, либо просто подсказывают, чтоповторяет их TextView / метку.Я не хочу делать что-либо из этого]

Спасибо.

Ответы [ 2 ]

0 голосов
/ 05 августа 2011

Я бы посмотрел на размер дисплея и сам определился, нахожусь ли я в альбомной или книжной ориентации.

Display defaultDisplay = getWindowManager().getDefaultDisplay(); 
int w = defaultDisplay.getWidth();
int h = defaultDisplay.getHeight();

if(w > h) {
    //landscape
} else {
    //portrait
}

Существует метод getRotation() для объекта Display, но это значение поворотаот его естественной ориентации, которая, в зависимости от устройства, может быть Пейзаж или Портрет.

В противном случае я не уверен, что вы подразумеваете под полноэкранным режимом EditText.

0 голосов
/ 05 августа 2011

Я никогда не видел ничего специально для «полноэкранного режима», который EditText использует на устройствах без аппаратной клавиатуры. Но в целом я думаю, что вы можете проверить фокусировку и соответственно изменить подсказку. Недостатком является то, что подсказка изменится, если пользователь использует колесо прокрутки, чтобы выделить EditText

...