我是android新手,正在学习java。在最近的指南中,我遇到了将密码字段切换为普通文本字段的方法。
有人可以解释一下|
这个声明中的用法吗?
final EditText input = (EditText) findViewById(R.id.etCommands);
if(passTog.isChecked())
{
input.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD);
}else {
input.setInputType(InputType.TYPE_CLASS_TEXT);
}
对此的任何帮助将不胜感激。提前致谢。
编辑:
我需要知道这个 按位或 实际上是如何工作的? 这是完整的代码,以避免变量的歧义:
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.text);
Button checkCommand = (Button)findViewById(R.id.bResults);
final ToggleButton passTog = (ToggleButton) findViewById(R.id.tbPassword);
final EditText input = (EditText) findViewById(R.id.etCommands);
TextView display = (TextView) findViewById(R.id.tvResults);
passTog.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
if(passTog.isChecked()){
input.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD);
}else {
input.setInputType(InputType.TYPE_CLASS_TEXT);
}
}
});
}