java - 如何通过单击 SearchView 打开新活动
问题描述
我创建了一个使用搜索视图的 Android 项目。我想通过单击 SearchView 打开一个新活动。当我单击 SearchView 的图标时,它可以正常工作,但是当我单击 SearchView 的空白区域时,键盘会弹出并且新活动没有打开。
我的java代码:
searchView=root.findViewById(R.id.search);
searchView.setIconifiedByDefault(true);
searchView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent searchIntent=new Intent(getActivity(),Notification_activity.class);
getActivity().startActivity(searchIntent);
}
});
我的 XML:
<SearchView
android:id="@+id/search"
android:layout_width="333dp"
android:layout_height="40dp"
android:layout_marginStart="8dp"
android:layout_marginLeft="8dp"
android:layout_marginTop="8dp"
android:layout_marginEnd="8dp"
android:layout_marginRight="8dp"
android:layout_marginBottom="8dp"
android:background="@drawable/search_round_corner"
android:iconifiedByDefault="false"
android:queryHint="Enter text to search"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
</SearchView>
解决方案
使用此代码,
searchView.setOnSearchClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startActivity(new Intent(A.this, B.class));
}
});
推荐阅读
- amazon-web-services - 用于跨 vpc 连接和 ssl 证书的 aws 专用区域
- sql-server - “sqlpackage.exe”不被识别为内部或外部命令错误
- c# - 将“平均”浮动百分之一
- php - 是否可以创建一个元素具有可变宽度的两行光滑滑块?
- linux - Linux 内核无法从 USB 挂载 rootfs
- java - 以下泛型代码有什么问题?
- ansible - Ansible 替换模块不起作用
- xcode - XCode 7.2.1 OpenGL Profiler:查看帧缓冲区内容
- bash - 从 docker 主机在 docker 容器内创建符号链接
- php - Facebook API:获取持久用户身份验证访问令牌