在账户登录错误时,如果显示弹出框则会显得很难看而且不友好。
当然使用Toast也是不错的选择。
在这里提供一种Animation的动画效果。
当用户名或者密码错误时,输入框会左右震动,来表示“用户名或者密码错误”。
同时,通过这个小案例,来初步了解Animation动画。
【注】灵感来自android自带的API。
Animation的XML
在项目的res目录下新建anim文件夹,用来存放Animation动画的XML。
新建shake.xml如下:
android:fromXDelta="0"
android:toXDelta="10"
android:duration="1000"
android:interpolator="@anim/cycle_7" />
其中,fromXDelta表示指定控件在动画开始时水平方向的像素位置,toXDelta表示在水平方向上的位移像素。
相应的,还可以有fromYDelta和toYDelta。
duration表示动画的持续时间。
Animation的应用
Animation shake = AnimationUtils.loadAnimation(this, R.anim.shake);
findViewById(R.id.editText2).startAnimation(shake);
findViewById(R.id.editText1).startAnimation(shake);
完整的应用
Java文件
package com.app;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.EditText;
import android.widget.Toast;
@SuppressLint("NewApi")
public class MyQQActivity extends Activity implements View.OnClickListener{
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.qq_login);
findViewById(R.id.button1).setOnCl