0
Я пытаюсь изменить текст в текстовом окне на внутреннем контроллере sony smartwatch нажатием кнопки. Однако метод TextView.setText()
кажется неработоспособным.TextView.setText() не работает на sony smartwatch
Вот мой ControlExtension расширенный класс
class SampleControlSmartWatch2 extends ControlExtension {
private static TextView textView = null;
SampleControlSmartWatch2(final String hostAppPackageName, final Context context,
Handler handler) {
//...
LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View layout = inflater.inflate(R.layout.sample_control_2, null);
textView = (TextView) layout.findViewById(R.id.textToBeChanged);
}
//...
public void onObjectClick(ControlObjectClickEvent event) {
Log.i(TAG, "Before : " + textView.getText().toString()); // It shows "original"
textView.setText("changed");
Log.i(TAG, "After : " + textView.getText().toString()); // It shows "changed"
textView.invalidate(); // These two methods are added after read
textView.requestLayout(); // through several posts but it doesn't work
}
}
Вошедший текст TextView в LogCat показано, как ожидается, но текст в эмулятор не обновляется. Кто-нибудь знает, как его решить? Спасибо.
Да, это работает. Вы знаете, как изменить текст в приложении-хозяине? –
Вы имеете в виду запуск обновления элемента управления в приложении на смартфоне из приложения SmartWatch? Я решил это, отправив намерение, которое приложение зарегистрировало. –
Я пытаюсь вызвать кнопку щелчка на приложении smartwatch, а затем изменить текст в приложении на телефоне. –