0
我有一个自定义EditText字符与一些简单的字符和图像。如何填充自定义EditText字符的底部?
但我想的图象填补这样的形象底:
这是我的代码:
custom_edittext.xml
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#5b5555" tools:context="com.example.user.myapplication.Custom_Edittext"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:background="#fff"> <EditText android:layout_width="match_parent" android:layout_height="60dp" android:id="@+id/editText" android:inputType="text" android:gravity="center_vertical" android:background="@null"/> </LinearLayout> </RelativeLayout>
Custom_Edittext.java
public class Custom_Edittext extends Activity implements TextWatcher{ EditText editText; Spannable.Factory spannableFactory; int lastIndex = -1; protected void onCreate(Bundle savedInstanceState) { enter code here`super.onCreate(savedInstanceState); setContentView(R.layout.custom_edittext); editText = (EditText) findViewById(R.id.editText); spannableFactory = Spannable.Factory .getInstance(); editText.addTextChangedListener(this); } public Spannable getIconText(Context context, CharSequence text, int index) { Spannable spannable = spannableFactory.newSpannable(text); if (index>lastIndex) { spannable.setSpan(new ImageSpan(context, R.drawable.pwd_bullet), index, index + 1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); } lastIndex=index; return spannable; } public void beforeTextChanged(CharSequence s, int start, int count, int after) {} public void onTextChanged(CharSequence s, int start, int before, int count) { if (start>4) { editText.removeTextChangedListener(this); editText.setText(getIconText(getApplicationContext(), s, start)); editText.addTextChangedListener(this); editText.setSelection(s.length()); } } public void afterTextChanged(Editable s) {} }
创建一个XML定制pwd_bullet这是一个EditText没有的EditText和ImageView的 –