我有两个活动:第一个是HomepageActivity
,它有一个搜索小部件,可以使用另一个活动SearchActivity
搜索数据。
我的目标是,当我从SearchActivity
返回HomepageActivity
时,搜索小部件将折叠且文本为空。
我已经尝试了以下方法:
public class HomepageActivity extends Activity {
@TargetApi(11)
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.projectslist, menu);
if(Build.VERSION.SDK_INT >= 11) {
SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
SearchView searchView = (SearchView) menu.findItem(R.id.homepage_search).getActionView();
ComponentName component = new ComponentName(this, SearchActivity.class);
searchView.setSearchableInfo(searchManager.getSearchableInfo(component));
searchView.setIconifiedByDefault(true);
searchView.setQuery("", false);
}
return super.onCreateOptionsMenu(menu);
}
[…]
@TargetApi(11)
@Override
protected void onRestart() {
super.onRestart();
if(Build.VERSION.SDK_INT >= 11)
invalidateOptionsMenu();
launchAsynchronousImageDownload();
}
}
如果小部件已被折叠得很好,小部件中的文本仍会记住搜索的文本(在我重新打开小部件后)。
如何重置小部件的文本?谢谢任何帮助! ;)
setIconified
方法将视图缩小为仅图标。当仅尝试清除查询时,它既不是必需的也不会丢失。 - Abandoned Cart