因此,我正在尝试将用户输入的Edittext文本转换为char变量,但是我似乎无法使其正常工作。另外,没找到有用的东西,所以决定在这里问。
谢谢!
答案 0 :(得分:1)
使EditText
像这样
<EditText
android:id="@+id/et1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:maxLength="1" />
它将仅从用户那里获取单个字符。现在,您可以在String中进行如下转换:
带有示例的代码:
Edittext et = (Edittext) findViewById(R.id.et1); // This will take Edittext of You're layout
String value = et.getText().toString(); // Get User input String
Character char = value.charAt(0); // Character
根据您的问题。
删除最大长度。
<EditText
android:id="@+id/et1"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
代码:
Edittext et = (Edittext) findViewById(R.id.et1); // This will take Edittext of You're layout
String value = et.getText().toString(); // Get User input String
for(int i = 0; i < value.length(); i++){
Log.d("Char", value.charAt(i));
}
答案 1 :(得分:0)
您可以使用String
从str.getCharAt(index)
中获取字符,也不能将String
更改为char,但是可以将String
更改为{{ 1}}个字符。
array
此外,您可以从数组中获取带有该字符索引的任何字符。
String str = textView.getText().toString();
char[] chr = str.toCharArray();
答案 2 :(得分:0)
就像@mumpitz提到的那样,如果只需要一个字符,则可以使用char c = chr[i]; // i is the index such as 0,1,2,3
。
或者,如果您需要整个字符串,则可以使用text.charAt(0)
,它将为您提供一个字符数组。