我有一个EditText与android:maxLength =“17”和使用按钮与onClickListener更新此EditText的文本这里的过程是,当文本长度达到16 EditText动画的左侧约一个字符距离使用TranslateAnimation (0,-15,0,0);然后EditText的第一个字符被删除。对于这第一个我调用的方法来执行动画,然后调用方法来删除第一个字符如下所示如何让代码等待,直到动画结束于android?
animate();
removeChar();
这里的问题是,在动画结束之前,角色被移除,意味着动画运行时removeChar()完成其功能,而我希望removeChar()在动画结束后执行其功能。
当我用Google搜索这个我找到答案用动画的听众,但同时ECLIPS写代码我没有发现任何动画侦听对象
的方法没有错误,并执行它们的功能准确,因为我想。对于方法的代码显示如下
public void animate()
{
//slide is declared at class level
slide = new TranslateAnimation(0, -15, 0,0);
slide.setDuration(1250);
slide.setFillAfter(true);
myEditText.startAnimation(slide);
}
public void removeChar()
{
String update="";
for(int i=1 ; i < myEditText.getText().toString().length() ; i++)
{
update=update+input.getText().toString().charAt(i);
}
myEditText.setText(update);
}
我也曾尝试使用下面的代码等待动画结束,但它会暂停应用程序。
animate();
//slide is declared at class level
while(!(slide.hasEnded()))
{
// Just waste the time
}
removeChar();
我认为应用程序停止,因为所有的处理进行了while循环和动画doe'nt GOTS结束,因此循环将成为无限循环,并导致应用程序停止
我搜索了很多,没有发现合适答案plz帮助我,我会选择一个代码段或一个小例子,因为我是新到Android PLZ真的需要帮助......
看看这个链接... http://android-developers.blogspot.com/2011/02/animation-in-honeycomb.html – Uttam
thnks它.......工作...... –