Android - 如何在键入时在TextView中显示键盘输入

时间:2014-11-03 21:59:09

标签: java android user-interface textview

在我的Android应用程序的一部分中,我试图显示我正在键入的文本,因为它是在没有按钮/按钮监听器的情况下键入的。换句话说,我想看到EditText中的文本实时发送到TextView。这可能吗?

3 个答案:

答案 0 :(得分:2)

///要强制打开键盘,请在任何侦听器或oncreate中提及代码

public partial class SomeWindow : Window
{
  public SomeWindow()
  {
    InitializeComponent();

    this.DataContext = new MainViewModel();
    this.Closing += CancelSqlOperationsOnClosing;
  }

  private void CancelSqlOperationsOnClosing(object sender, CancelEventArgs e)
  {
    if (this.DataContext is MainViewModel viewModel)
    {
      viewModel.AbortSqlCommand.Execute(string.Empty);
    }
  }
}

//要跟踪按下的键

InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
    imm.toggleSoftInput(InputMethodManager.SHOW_FORCED,0);

答案 1 :(得分:0)

您可以通过在EditText上调用addTextChangedListener并创建新的TextWatcher来实现此目的。

EditText editText = findViewById(R.id.edit_text);
editText..addTextChangedListener(new TextWatcher() {
        @Override
        public void beforeTextChanged(CharSequence s, int start, int count, int after) {

        }

        @Override
        public void onTextChanged(CharSequence s, int start, int before, int count) {
          changeTextView();
        }

        @Override
        public void afterTextChanged(Editable s) {

        }
    });

答案 2 :(得分:0)

您可以使用EditText TextChangedListener。

textView = (TextView)findViewById(R.id.text_view);
editText = (EditText)findViewById(R.id.edit_text);
editText.addTextChangedListener(new TextWatcher(){
    public void afterTextChanged(Editable s) {
        textView.setText(editText.getText().toString());
    }
    public void beforeTextChanged(CharSequence s, int start, int count, int after){}
    public void onTextChanged(CharSequence s, int start, int before, int count){}
});