在片段工具栏上放置一个搜索按钮,目的是 activity
place a search button on a fragments toolbar with an intent to an activity
我正在尝试在片段的工具栏上添加搜索图标。
这段代码和下面的布局只是在工具栏上添加了一个菜单图标(三个垂直点),按下菜单时,我得到一个 search
。
但我不想要那个。我试图在工具栏中添加一个搜索图标,目的是 google places autocomplete activity。我该怎么做?
片段
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setHasOptionsMenu(true);
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
inflater.inflate(R.menu.map_menu, menu);
super.onCreateOptionsMenu(menu, inflater);
}
map_menu
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/app_bar_search"
android:icon="@drawable/ic_search_black_24dp"
android:title="Search"
app:actionViewClass="android.widget.SearchView"
android:iconifiedByDefault="true"/>
</menu>
删除
app:actionViewClass="android.widget.SearchView"
从您的菜单项。
添加以下代码以显示您的菜单项:
app:showAsAction="always"
并在选项菜单的点击监听器中使用PlaceAutocomplete.IntentBuilder
int PLACE_AUTOCOMPLETE_REQUEST_CODE = 1;
...
try {
Intent intent =
new PlaceAutocomplete.IntentBuilder(PlaceAutocomplete.MODE_FULLSCREEN)
.build(this);
startActivityForResult(intent, PLACE_AUTOCOMPLETE_REQUEST_CODE);
} catch (GooglePlayServicesRepairableException e) {
// TODO: Handle the error.
} catch (GooglePlayServicesNotAvailableException e) {
// TODO: Handle the error.
}
我正在尝试在片段的工具栏上添加搜索图标。
这段代码和下面的布局只是在工具栏上添加了一个菜单图标(三个垂直点),按下菜单时,我得到一个 search
。
但我不想要那个。我试图在工具栏中添加一个搜索图标,目的是 google places autocomplete activity。我该怎么做?
片段
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setHasOptionsMenu(true);
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
inflater.inflate(R.menu.map_menu, menu);
super.onCreateOptionsMenu(menu, inflater);
}
map_menu
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/app_bar_search"
android:icon="@drawable/ic_search_black_24dp"
android:title="Search"
app:actionViewClass="android.widget.SearchView"
android:iconifiedByDefault="true"/>
</menu>
删除
app:actionViewClass="android.widget.SearchView"
从您的菜单项。
添加以下代码以显示您的菜单项:
app:showAsAction="always"
并在选项菜单的点击监听器中使用PlaceAutocomplete.IntentBuilder
int PLACE_AUTOCOMPLETE_REQUEST_CODE = 1;
...
try {
Intent intent =
new PlaceAutocomplete.IntentBuilder(PlaceAutocomplete.MODE_FULLSCREEN)
.build(this);
startActivityForResult(intent, PLACE_AUTOCOMPLETE_REQUEST_CODE);
} catch (GooglePlayServicesRepairableException e) {
// TODO: Handle the error.
} catch (GooglePlayServicesNotAvailableException e) {
// TODO: Handle the error.
}