SearchView
是一种设计标准,但有一个缺陷,它的OnCloseListener
(通常我会将代码放在此处进行搜索而不进行筛选)不被调用。
如果您只想在OnQueryTextSubmit
而不是OnQueryTextChange
中执行搜索,则会出现问题。
当查询字符串为空时,而且我不想在用户只是为了键入其他内容而擦除它时进行搜索--只有在故意删除文本筛选时才进行搜索。
我使用的是seticonifiedbydefault(true)
,因为设计要求始终可见的搜索栏--但即使情况并非如此,onclose()
也只有当您在第二次单击“X”图标时“图标化”SearchView时才会调用。
最佳解决方案是什么?最好不在SearchView上添加自定义视图等。
解决方法:创建覆盖SearchView的自己的视图,当按下时执行搜索。仅当搜索字符串为空但上次执行的搜索使用了非空字符串时才可见(不需要其他情况)。
xml prettyprint-override"><RelativeLayout>
<SearchView
android:id="@+id/search" />
<ImageView
android:id="@+id/clear"
android:layout_width="@dimen/someValue"
android:layout_height="0dip"
android:layout_alignTop="@id/search"
android:layout_alignBottom="@id/search"
android:layout_alignRight="@id/search"
android:scaleType="fitCenter"
android:visibility="gone"
android:src="@drawable/someIcon" />
</RelativeLayout>
// assign to the overlaying ImageView
class OnClearClickListener implements View.OnClickListener{
@Override
public final void onClick(View v) {
View clear = findViewById(R.id.clear);
clear.setVisibility(View.GONE); // hide, just did its job
performSearch();
}
}
// assign to SearchView
class OnFilterQueryTextListener implements OnQueryTextListener {
@Override
public boolean onQueryTextChange(String newText) {
boolean hide = newText != null && newText.length() > 0 ||
!lastSearchUsedFilter(); // check value stored on successful response
findViewById(R.id.clear).setVisibility(hide ? View.GONE : View.VISIBLE);
return false;
}
@Override
public boolean onQueryTextSubmit(String query) {
findViewById(R.id.clear).setVisibility(View.GONE);
performSearch();
return false;
}
});
当导航栏崩溃时,我想让我的搜索栏可见。 我的代码:http://jsfiddle.net/edalzell/a3yng825/1/折叠时工作,但展开时显示两个搜索栏。 HTML:
我正在尝试在我的android应用程序中实现折叠工具栏。我可以按我希望的方式显示工具栏,但滚动时它不会塌陷。 我正在使用以下代码 activity.xml main_toolbar.xml 下面是屏幕的外观
使用: 随着项目Cheesesquare的更新。 进入奶酪的细节,我移除2张牌(只有一张)。有没有办法防止显示空白的工具栏折叠?
问题内容: 我使用Bootstrap 4很好地创建了这个可折叠的导航栏,但是我希望当用户单击链接时将其关闭。有什么办法吗?谢谢 html导航栏: .icon-bar的css,因为Bootstrap 4不使用icon-bar类。 问题答案: 您可以像这样将组件添加到链接。 或者 ,(也许是一种更好的方法)像这样使用jQuery。
此时开始展开 我实际上要做的是使标题在完全展开时变成,允许用户给他/她的字符命名,然后显示为标题。我试图通过调用或,以及对的子级调用这两个方法来解决这个问题。没有效果。
基本上我在页面的顶部有一个navbar。这个navbar具有折叠功能,因此菜单仍然可以用于小屏幕。我想在这个可折叠的navbar的底部附加一个div。更具体地说,在屏幕的右侧,会有一个红色的圆圈,它以navbar的边界为中心。 我正在寻找类似这样的东西:在这里输入图像描述,圆圈不是一个按钮。可折叠按钮仅出现在小屏幕上(在导航栏右侧) 我尝试了很多我在网上找到的建议。他们大多建议给父div一个相对位