首先生成EditText
声明必要的变量:
private Vibrator vib; //可以让手机实现震动的变量
Animation animation; //实现动画效果,给editText进行效果
private EditText signInputName; //EditText
private TextInputLayout mLayout;//TextInputLayout
声明必要的获取语句:
mLayout=(TextInputLayout)findViewById(R.id.signup);
signInputName=(EditText)findViewById(R.id.editText);
animation=AnimationUtils.loadAnimation(getApplicationContext(),R.anim.shake);
这里的R.anim.shake 表示res/anim/shake.xml
android:interpolator="@android:anim/overshoot_interpolator" - 指定了特定的内置的动画效果
vib = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE); //想实现震动需要调用震动服务
signInputName.setAnimation(animation); //设置动画
signInputName.startAnimation(animation);//实现动画
vib.vibrate(120);//发生震动
关于TextInputLayout:
mLayout.setErrorEnabled(false);
if(signInputName.getText().toString().trim().isEmpty()){
mLayout.setErrorEnabled(true);
mLayout.setError("please enter a name");//页面上出现的错误提示
signInputName.setError("Valid input required");//文本框上出现的错误提示
}
在权限上,我们需要在AndroidManifest.xml里设置震动权限:
<uses-permission android:name="android.permission.VIBRATE"></uses-permission>
我们需要在build.gradle(Module:app)里独立依赖dependencies部分添加
compile 'com.android.support:design:26.+'
但是最后执行的时候发生了一些错误无法修改错误提示的字体颜色,比如显示的都是红色的字体,如何对字体颜色进行
修改,是需要进一步研究下。