我希望这还没有被问到,因为我找不到它。我试图获取用户的在线服务的用户名和密码。我创建了一个用户名TextView和一个密码TextView。我可以从用户名TextView中获取文本而不会出现问题。但是,我无法从密码TextView中获得任何信息。以下是XML:
<TextView
android:id="@+id/user_password"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="8dp"
android:text="@string/passcodeQuery"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/editText2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
android:layout_marginTop="8dp"
android:hint="@string/passwordHint"
android:inputType="textPassword" />
问题是,如果我运行代码
TextView passField = (TextView)findViewById(R.id.user_password);
然后
String toastMessage = "Password: " + passField.getText().toString();
无论我在密码字段中输入什么,toast消息都会给我
Password: Password
我显然不会正常烘烤用户密码,我现在正在做,因为我想确保我正确地读取输入。不幸的是,情况似乎并非如此,因为我无法读取密码字段。你怎么解决这个问题? Ton的应用程序似乎能够做到这一点。获取密码比我正在做的更简单吗?
答案 0 :(得分:3)
如果你想像“PassWord:你的EDITTEXT VALUE”那样敬酒,那就用吧。
EditText passField = (EditText)findViewById(R.id.editText2);
然后使用:
String toastMessage = "Password: " + passField.getText().toString();
现在祝酒消息。
享受。 :)
答案 1 :(得分:0)
怎么样
EditText passField = (EditText)findViewById(R.id.editText2);
而不是“user_password”?
答案 2 :(得分:0)
您应该从EditText
而不是TextView
EditText passField = (EditText )findViewById(R.id.editText2);
String toastMessage = "Password: " + passField.getText().toString();
答案 3 :(得分:0)
Dude您正在尝试从TextView获取密码,您必须从EditText中获取
EditText password = (EditText)findViewById(R.id.editText2);
将其存储在String中
String pwd = password.getText().toString();
为自己的验证干杯
答案 4 :(得分:0)
您可以从EditText获取值,而不是从TextView获取。您可以设置不获取。
EditText passField = (EditText )findViewById(R.id.editText2);
String toastMessage = "Password: " + passField.getText().toString().trim();