在Android应用程序中实现Google Maps等搜索栏

在Android应用程序中实现Google Maps等搜索栏,第1张

概述我正在构建一个使用GoogleMapsAPI的应用,我希望它在顶部有一个浮动搜索栏,与Google地图应用中的搜索栏完全相同.我发现了PlacesAutocomplete,但是应用程序不会搜索地点,而是搜索用户将创建的另一种数据.我还发现了一个名为FloatSearchView的库,但它已经停止了一段时间,因此

我正在构建一个使用Google Maps API的应用,我希望它在顶部有一个浮动搜索栏,与Google地图应用中的搜索栏完全相同.

我发现了Places autocomplete,但是应用程序不会搜索地点,而是搜索用户将创建的另一种数据.

我还发现了一个名为float Search VIEw的库,但它已经停止了一段时间,因此我想传递一下.我也想手动创建它,因为这是我要构建的第一个Android应用程序,我想学习.

我尝试在我的XML中实现SearchVIEw:

<androID.support.v7.Widget.SearchVIEw    androID:ID="@+ID/searchVIEw"    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content"    app:iconifIEdByDefault="false"    app:queryHint="@string/search_hint"    androID:theme="@style/Searchbar"/>

白色背景和海拔:

<style name="Searchbar">    <item name="androID:background">@color/colorPrimary</item>    <item name="androID:elevation">4dp</item></style>

看看我是否可以接近它,但结果非常奇怪.

我尝试过添加工具栏等其他方法,但结果是一样的.

我想要一个像谷歌地图顶部搜索栏的结果.我该怎么做?

解决方法:

谷歌地图用户界面可能没什么特别之处.我的猜测是它是一个全屏幕MapVIEw上的自定义视图.您可以通过在与全屏MapVIEw相同的容器中使用类似工具栏的布局来执行类似的 *** 作.

这是一个XML布局,可以帮助您入门:

<?xml version="1.0" enCoding="utf-8"?><androID.support.constraint.ConstraintLayout    xmlns:androID="http://schemas.androID.com/apk/res/androID"    xmlns:app="http://schemas.androID.com/apk/res-auto"    androID:layout_wIDth="match_parent"    androID:layout_height="match_parent">    <com.Google.androID.gms.maps.MapVIEw        androID:layout_wIDth="match_parent"        androID:layout_height="match_parent"        androID:background="@color/red"        app:layout_constraintBottom_toBottomOf="parent"        app:layout_constraintEnd_toEndOf="parent"        app:layout_constraintStart_toStartOf="parent"        app:layout_constrainttop_totopOf="parent" />    <androID.support.v7.Widget.CardVIEw        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content"        androID:layout_margin="16dp"        app:layout_constraintEnd_toEndOf="parent"        app:layout_constraintStart_toStartOf="parent"        app:layout_constrainttop_totopOf="parent">        <linearLayout            androID:layout_wIDth="match_parent"            androID:layout_height="wrap_content">            <Imagebutton                androID:layout_wIDth="wrap_content"                androID:layout_height="wrap_content"                androID:src="@drawable/ic_add_24dp" />            <EditText                androID:hint="Try gas stations, ATMs"                androID:layout_wIDth="0dp"                androID:layout_height="wrap_content"                androID:layout_weight="1" />            <Imagebutton                androID:layout_wIDth="wrap_content"                androID:layout_height="wrap_content"                androID:src="@drawable/ic_search_24dp" />        </linearLayout>    </androID.support.v7.Widget.CardVIEw></androID.support.constraint.ConstraintLayout>

这看起来像这样(想象红色是MapVIEw的位置):

从这里开始,您只需根据需要设置“工具栏”的样式.

希望有所帮助!

总结

以上是内存溢出为你收集整理的在Android应用程序中实现Google Maps等搜索栏全部内容,希望文章能够帮你解决在Android应用程序中实现Google Maps等搜索栏所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1108984.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存