小编Pac*_*ega的帖子

如何使CollapsingToolbar具有"wrap_content"高度?

我想制作搜索工具栏,无论滚动级别如何,都会向下滑动并在向上滑动时折叠.当我想将此工具栏的高度设置为搜索区域时遇到问题.在向下滑动它很好.但在向上滑动搜索图标仍然可见. 在此输入图像描述 例如,如果我将AppBarLayout android:layout_height ="wrap_content"更改为100dp,则可以隐藏工具栏,但它看起来很糟糕,可能会导致不同分辨率出现问题.我想要实现的例子是在Play Market应用程序中搜索,它是如何在那里完成的?

<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:context="test.proekt101_test.MainActivity">

<android.support.design.widget.AppBarLayout
    android:id="@+id/app_bar"
    android:layout_width="match_parent"
    android:fitsSystemWindows="true"
    android:theme="@style/AppTheme.AppBarOverlay"
    android:layout_height="wrap_content">
    <android.support.design.widget.CollapsingToolbarLayout
        android:id="@+id/toolbar_layout"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:fitsSystemWindows="true"
        app:contentScrim="?attr/colorPrimary"
        app:layout_scrollFlags="scroll|enterAlways|snap"
        >
                    <SearchView
                    android:id="@+id/searchView1"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_centerHorizontal="true"
                    android:layout_alignParentTop="true"
                    android:layout_marginTop="30dp"
                    >
                </SearchView>
                </android.support.design.widget.CollapsingToolbarLayout>
            </android.support.design.widget.AppBarLayout>

            <include layout="@layout/content_main" />

        </android.support.design.widget.CoordinatorLayout>
Run Code Online (Sandbox Code Playgroud)

android android-coordinatorlayout android-collapsingtoolbarlayout android-appbarlayout

1
推荐指数
1
解决办法
2673
查看次数

比较大量字符串的最有效算法是什么?

我们来看两个字符串arraylists

List<String> namesListA = new ArrayList<>(/*50 000 strings*/);
List<String> namesListB = new ArrayList<>(/*400 000 strings*/);
Run Code Online (Sandbox Code Playgroud)

removeAll方法似乎无法正常工作.后:

namesListA.removeAll(namesListB);
Run Code Online (Sandbox Code Playgroud)

namesListA.size()仍然是50000.编辑:输入数据不正确,它实际上工作但需要很长时间.

我写了以下蛮力代码:

boolean match;
    for (String stringA: namesListA)
    {
        match = false;
        for (String stringB: namesListB)
        {
            if (stringA.equals(stringB))
            {
                match = true;
                break;
            }
        }
        if (!match)
        {
            finallist.add(stringA);
        }
    }
Run Code Online (Sandbox Code Playgroud)

但它需要8个小时才能完成.它有任何已知的有效搜索字符串算法?喜欢按字母顺序对字符串进行排序,然后逐字母或类似的搜索.

java algorithm collections

1
推荐指数
1
解决办法
189
查看次数