1.添加表情图片
1.在布局文件添加Edittext 和button
<EditText
android:id="@+id/edit"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:hint="@null"
/>
<Button
android:id="@+id/button"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="添加表情"
/>
2.
public class MainActivity extends Activity {
private EditText editText;
private Button button;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
editText = (EditText) this.findViewById(R.id.edit);
button = (Button) this.findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
int randomId = new Random().nextInt(9);
try {
Field field = R.drawable.class.getDeclaredField("face"+randomId);
int resourceId = Integer.parseInt(field.get(null).toString());
//在android显示图片,要使用Bitmap位图的对象来装载
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), resourceId);
ImageSpan imageSpan = new ImageSpan(bitmap);
SpannableString ss = new SpannableString("face");
ss.setSpan(imageSpan, 0, 4,Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
editText.append(ss);
} catch (Exception e) {
// TODO: handle exception
}
}
});
}
}
2.在EditText输入特定字符,完成校验功能
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="使用android:digits属性(输入数字)" />
<EditText
android:id="@+id/edittext1"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:hint="@null"
android:digits="0123456789"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="使用android:digits属性(输入小写字母)" />
<EditText
android:layout_width="200dp"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:hint="@null"
android:digits="asdfghjklpoiuytrewqzxcvbnmop"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="使用android:inputType属性(输入数字)" />
<EditText
android:layout_width="200dp"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:hint="@null"
android:inputType="number|textCapCharacters"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="使用android:inputType属性(输入Emial)" />
<EditText
android:layout_width="200dp"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:hint="@null"
android:inputType="textEmailAddress"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="使用android:numberic属性(输入有符号的浮点数)" />
<EditText
android:layout_width="200dp"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:hint="@null"
android:numeric="decimal|signed"
/>
<Button
android:id="@+id/button"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="确认"
/>
public class MainActivity extends Activity {
private EditText num;
private Button button;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
num = (EditText) this.findViewById(R.id.edittext1);
button = (Button) this.findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
String value = num.getText().toString();
if(value == null || value.trim().equals("")){
num.setError("请输入内容");
return;
}
}
});
}
}