我的布局有一个editext字段和一些设置文本的按钮。我不知道为什么有些按钮可以在当前光标位置设置文本,而其他按钮则不能。
详细信息,数字" 0,1,2"可以插入到当前光标位置但加号字符#34; +"。
我的main.xml
<RelativeLayout
android:id="@+id/displayLayout"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="45"
android:padding="10dp">
<EditText
android:id="@+id/result"
android:layout_width="fill_parent"
android:layout_height="30dp"
android:background="#ffff"
android:ellipsize="end"
android:inputType="number" />
</RelativeLayout>
在我使用的当前光标位置设置文字:
int start =editText.getSelectionStart(); //get the the cursor position
String s = "Some string";
editText.getText().insert(start, s); //get the text and insert the String
Onclick方法
@Override
public void onClick(View v) {
EditText result = (EditText) getActivity().findViewById(R.id.result);
int start = result.getSelectionStart();
switch (v.getId()) {
case R.id.digit0:
result.getText().insert(start, "0");
break;
case R.id.digit1:
result.getText().insert(start, "1");
break;
case R.id.digit2:
result.getText().insert(start, "2");
break;
case R.id.plus:
result.getText().insert(start, "+");
break;
}
}
我希望有人能帮助我找出问题所在。谢谢你,我非常感谢你的帮助。
答案 0 :(得分:1)
+
设置为EditText
,则 android:inputType="number"
不是有效字符。你想输入一个电话号码吗?您可以尝试android:inputType="phone"