Android 如何将动画设置为SearchView编辑文本
我想在android-support-v7-appcompat中将动画设置为SearchView EditText (显示编辑文本) 我的代码是:Android 如何将动画设置为SearchView编辑文本,android,android-appcompat,Android,Android Appcompat,我想在android-support-v7-appcompat中将动画设置为SearchView EditText (显示编辑文本) 我的代码是: SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE); SearchView searchView = (SearchView) menu.findItem(R.id.action_search).g
SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
SearchView searchView = (SearchView) menu.findItem(R.id.action_search).getActionView();
//searchView.setLayoutTransition(transition);
searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));
searchView.setIconifiedByDefault(true);
final Animation mLoadAnimation = AnimationUtils.loadAnimation(getApplicationContext(), android.R.anim.fade_in);
mLoadAnimation.setDuration(50000);
final EditText searchSourceText = (EditText)searchView.findViewById(android.support.v7.appcompat.R.id.search_src_text);
searchView.setOnClickListener(new SearchView.OnClickListener()
{
@Override
public void onClick(View v) {
searchSourceText.startAnimation(mLoadAnimation);
}
});
我想动画运行时,点击搜索视图(出现编辑文本) 我猜您的代码在
onCreate()
中。
只需在onClick()
方法本身中初始化动画即可
SearchView searchView = (SearchView) menu.findItem(R.id.action_search).getActionView();
searchView.setOnClickListener(new SearchView.OnClickListener() {
@Override
public void onClick(View v) {
Animation mLoadAnimation = AnimationUtils.loadAnimation(getApplicationContext(), android.R.anim.fade_in);
mLoadAnimation.setDuration(50000); //50 seconds
EditText searchSourceText = (EditText)searchView.findViewById(android.support.v7.appcompat.R.id.search_src_text);
searchSourceText.startAnimation(mLoadAnimation);
}
});
不需要期末考试,在需要时执行所有逻辑。代码有什么问题吗?我希望在单击SearchView(显示编辑文本)时运行动画,并在
onClick
方法本身中初始化动画。GC可能会删除它,因为它不在onCreate
之外使用。您能为我发送完整的代码吗?不能在其他方法中定义的内部类中引用非最终变量searchView!!!!!!