0
嘿家伙很新的android工作室,就像标题说,我试图把文本内的EditText到一个名为“用户名”的变种,我希望能够在我的内部类中使用,但我不知道如何从内部访问它。Android studio - 如何从内部类访问EditText?
这里就是我做的EditText上的的onCreate内:(KeyListener的是我的内部类的名称)
KeyListener KL_Instance = new KeyListener();
EditText input_text = (EditText) findViewById(R.id.inputText);
input_text.setOnKeyListener(KL_Instance);
String username = input_text.getText().toString();
这里就是我想要的内部类做:
public class KeyListener implements View.OnKeyListener
{
@Override
public boolean onKey(View view, int keyCode, KeyEvent keyEvent)
{
if (keyCode == KeyEvent.KEYCODE_AT)
{
Toast.makeText(MainActivity.this, "Do not type @", Toast.LENGTH_LONG).show();
}
//if the enter key is pressed, then check to see if username is 8 or more chars
if (keyCode == keyEvent.KEYCODE_ENTER)
{
//if it is, display it
if(username.length => 8)
{
Toast.makeText(MainActivity.this, "Hi, " + username, Toast.LENGTH_LONG).show();
}else //else, ask for a username of atleast 8 chars
{
Toast.makeText(MainActivity.this, "Please enter a username that is 8 or more chars", Toast.LENGTH_LONG).show();
}
}
return false;
}
}
但它说:“无法解析符号‘用户名’”和我不能访问“INPUT_TEXT”该类要么左右的时间内如果有人可以帮助我在这里将不胜感激,提前 谢谢:)
还没有了解TextWatchers,那么通过与我的听众更新它意味着什么? :) – flanelman