点击android搜索框跳入另一个页面,android - ToolBar中的SearchView如何让点击之后跳转到一个新的Activity...
PHP中文网2017-04-17 13:08:302楼
@李引证 的回答包括了关键信息,我来补充一些细节,及纠正几个细节上的错误。
关于“菜单项的点击事件”
我们需要覆写 onCreateOptionsMenu 来初始化Activity/Fragment的选项菜单。
Android同时提供了另一个方法 onOptionsItemSelected(),该方法在菜单项被点击时调用,在这里处理菜单项的点击事件。所以一般不会在 onCreateOptionsMenu 为某个item实现其callback.
需要纠正的是,MenuItem没有setClickListener,而是MenuItem.setOnMenuItemClickListener.
所以,我们一般这样去做:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu_start_search_activity, menu);
return super.onCreateOptionsMenu(menu);
}
@Override
public boolean onMenuItemSelected(int featureId, MenuItem item) {
switch (item.getItemId()) {
case R.id.menu_item_search:
startActivity(new Intent(StartSearchActivity.this, PhotoGalleryActivity.class));
return true;
}
return super.onMenuItemSelected(featureId, item);
}
关于“点击SearchView后跳转到一个新的Activity”
当我们想为一个activity添加搜索框(换句话说就是点击action bar menu item,然后在action bar上弹出搜索框),一般做法是把该activity(也就是包含了search menu item的activity)配置为可搜索,然后再实现相应的方法。
根据menu item是否配置了android:actionViewClass="android.widget.SearchView",相应的方法(onCreateOptionsMenu, onOptionsItemSelected)在实现上有些差别。
结果上也有差别,前者是在action bar上覆盖一个搜索对话框,后者具有和应用完全一致的样式和主题,如下图:
所以,如果你想点击SearchView后跳转到一个新的Activity,就像微信搜索框的效果。
需要这样做:
首先配置这个新的Activity为可搜索的Activity,并实现其相应的方法;
参考 (1)配置一个Searchable Activity;发起搜索请求;在onNewIntent中处理search intent;(2)使用SearchView作为search menu item的指定视图。
然后为某一个Activity添加MenuItem,在Item的点击事件中(参考上述:关于“菜单项的点击事件”),启动上面配置的activity;
所以,需要纠正的是,这个item就是普通的item,不是具有SearchView视图的item,你的问题表述在这一点上是错误的。参考 启动一个可搜索的Activity;启动一个可搜索的activity,通过MenuItem。
同时要注意,需要调用searchView.setIconifiedByDefault(false),这样启动的这个可搜索的activity的searchView才是展开的,如下GIF效果:
Done :)
点击android搜索框跳入另一个页面,android - ToolBar中的SearchView如何让点击之后跳转到一个新的Activity...相关推荐
- android搜索框布局文件,android搜索框列表布局,流程及主要步骤思维导图
android搜索框列表布局,流程及主要步骤思维导图 android搜索框列表布局,流程及主要步骤思维导图 activity_coin_search.xml ---------- android:id ...
- 【OS_Windows】Win10应用商店闪退和点击Cortana搜索框闪退的解决方法
[OS_Windows]Win10应用商店闪退和点击Cortana搜索框闪退的解决方法 参考文章: (1)[OS_Windows]Win10应用商店闪退和点击Cortana搜索框闪退的解决方法 (2) ...
- android圆形点击效果,Android 三种方式实现自定义圆形页面加载中效果的进度条
[实例简介] Android 三种方式实现自定义圆形页面加载中效果的进度条 [实例截图] [核心代码] ad376a86-a9aa-49bc-8cea-321bcff2c0c3 └── AnimRou ...
- [Android]搜索框SearchView
SearchView的介绍 SearchView提供了用户界面,并且可以通过监听查询内容来帮助实现搜索查询功能的小组件. SearchView的属性 XML 属性 android:iconifiedB ...
- android搜索框实现
http://blog.csdn.net/pengjianbosoft/article/details/6638402 在Map应用中会经常见到一个浮动的搜索框 一般可以搜索附近的POI点信息 而且这 ...
- Android 搜索框的实时查询/模糊查询
在搜索框的检索中我们经常会遇到"精确检索"."模糊检索",精确检索我就不多加解释了,我们看下模糊检索: 参考: http://blog.csdn.net/jds ...
- Android 搜索框:SearchView 的属性和用法详解
转载请标明出处: http://blog.csdn.net/airsaid/article/details/51087226 本文出自:周游的博客 SearchView简介 SearchView属性 ...
- Android 搜索框、书架页面以及排行榜页面UI设计
设计思路 收集各大主流小说App搜索UI设置,发现基本都会有在导航栏(AppBar)中设置搜索功能.故本App也采取这种主流设计.同时考虑在书架页面和排行榜页面进行滑动切换. 搜索框UI设计 实现效果 ...
- android 搜索框组件,Android零基础入门|搜索框组件SearchView
原标题:Android零基础入门|搜索框组件SearchView 一.SearchView概述 SearchView是搜索框组件,它可以让用户在文本框内输入文字,并允许通过监听器监控用户输入,当用户输 ...
最新文章
- phpstudy免费安全检测服务_Phpstudy联合各大安全厂商为用户提供免费安全检测服务...
- 关于eclipse的indigo版中文注释时字体太小的问题(转)
- 最新版Byte Buddy完全支持Java 11
- 【答辩问题】计算机专业本科毕业设计答辩的一般程序2
- yii selenium php,Yii 单元测试用例
- 桥接模式和php实现
- Eclipse的界面语言
- 珍藏多年的技术资源搜索网站——程序员必备
- 【安卓手机驱动无法安装则无法连接电脑,终极100%解决方法】ADB interfacm与 Andriod安装出现黄色感叹号
- Python selenium 加载并保存QQ群成员,去除其群主、管理员信息的示例代码
- 国外android内存清理工具,给大家推荐一个安卓清理神器哈,确实好用
- 我的三偶之:迈克尔.杰克逊(Micheal Jackson)
- Java实现内存分配算法 FF(首次适应算法) BF(最佳适应算法)
- 奔骝定位摄影作品之LAS200
- 信息发布类网站后台界面设计一点思考(整体布局)
- 《恋上数据结构与算法》第1季:算法概述
- vmware上pfSense安装说明
- HDU3507打印文章 斜率优化入门
- 计算机应用池在哪,机动车号牌发放将全国统一 号池号码全部由计算机随机投放、自动增补...
- 信号处理之FFT(如何求幅度、相位、画频谱图)