【发布时间】:2014-01-09 04:04:33
【问题描述】:
我正在尝试在 AlertDialog 中添加一个 AutoCompleteTextBox,但我不知道该怎么做。任何有关相同的帮助将不胜感激。同样在那个 AutoCompleteTextBox 中,我想通过 google Places API 显示这些地方。我已经为此实现了 google Places API,如果我为此运行 url,它会显示结果,但是当我在 AutoCompleteText 框中输入 2 个或更多字符时,它会显示以下错误:
12-20 15:28:39.020: E/AndroidRuntime(19180): FATAL EXCEPTION: main
12-20 15:28:39.020: E/AndroidRuntime(19180): android.view.InflateException: Binary XML file line #47: Error inflating class fragment
12-20 15:28:39.020: E/AndroidRuntime(19180): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:704)
12-20 15:28:39.020: E/AndroidRuntime(19180): at android.view.LayoutInflater.rInflate(LayoutInflater.java:746)
12-20 15:28:39.020: E/AndroidRuntime(19180): at android.view.LayoutInflater.inflate(LayoutInflater.java:489)
12-20 15:28:39.020: E/AndroidRuntime(19180): at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
12-20 15:28:39.020: E/AndroidRuntime(19180): at android.widget.ArrayAdapter.createViewFromResource(ArrayAdapter.java:371)
12-20 15:28:39.020: E/AndroidRuntime(19180): at android.widget.ArrayAdapter.getView(ArrayAdapter.java:362)
12-20 15:28:39.020: E/AndroidRuntime(19180): at android.widget.AbsListView.obtainView(AbsListView.java:2340)
12-20 15:28:39.020: E/AndroidRuntime(19180): at android.widget.ListPopupWindow$DropDownListView.obtainView(ListPopupWindow.java:1236)
12-20 15:28:39.020: E/AndroidRuntime(19180): at android.widget.ListView.measureHeightOfChildren(ListView.java:1250)
12-20 15:28:39.020: E/AndroidRuntime(19180): at android.widget.ListPopupWindow.buildDropDown(ListPopupWindow.java:1123)
12-20 15:28:39.020: E/AndroidRuntime(19180): at android.widget.ListPopupWindow.show(ListPopupWindow.java:532)
12-20 15:28:39.020: E/AndroidRuntime(19180): at android.widget.AutoCompleteTextView.showDropDown(AutoCompleteTextView.java:1081)
12-20 15:28:39.020: E/AndroidRuntime(19180): at android.widget.AutoCompleteTextView.updateDropDownForFilter(AutoCompleteTextView.java:956)
12-20 15:28:39.020: E/AndroidRuntime(19180): at android.widget.AutoCompleteTextView.onFilterComplete(AutoCompleteTextView.java:938)
12-20 15:28:39.020: E/AndroidRuntime(19180): at android.widget.Filter$ResultsHandler.handleMessage(Filter.java:285)
12-20 15:28:39.020: E/AndroidRuntime(19180): at android.os.Handler.dispatchMessage(Handler.java:99)
12-20 15:28:39.020: E/AndroidRuntime(19180): at android.os.Looper.loop(Looper.java:153)
12-20 15:28:39.020: E/AndroidRuntime(19180): at android.app.ActivityThread.main(ActivityThread.java:4987)
12-20 15:28:39.020: E/AndroidRuntime(19180): at java.lang.reflect.Method.invokeNative(Native Method)
12-20 15:28:39.020: E/AndroidRuntime(19180): at java.lang.reflect.Method.invoke(Method.java:511)
12-20 15:28:39.020: E/AndroidRuntime(19180): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:821)
12-20 15:28:39.020: E/AndroidRuntime(19180): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:584)
12-20 15:28:39.020: E/AndroidRuntime(19180): at dalvik.system.NativeStart.main(Native Method)
12-20 15:28:39.020: E/AndroidRuntime(19180): Caused by: java.lang.IllegalArgumentException: Binary XML file line #47: Duplicate id 0x7f05000e, tag null, or parent id 0x0 with another fragment for com.google.android.gms.maps.SupportMapFragment
12-20 15:28:39.020: E/AndroidRuntime(19180): at android.support.v4.app.FragmentActivity.onCreateView(FragmentActivity.java:296)
12-20 15:28:39.020: E/AndroidRuntime(19180): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:676)
12-20 15:28:39.020: E/AndroidRuntime(19180): ... 22 more
以下是我如何实现适配器:
AutoCompleteTextView autoCompView = (AutoCompleteTextView)findViewById(R.id.autoCompleteTextView1);
autoCompView.setAdapter(new PlacesAutoCompleteAdapter(this, R.layout.list_item));
list_item中的AutoCompleteTextView如下:
<AutoCompleteTextView
android:id="@+id/autoCompleteTextView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/BookCabtxt"
android:ems="10"
>
</AutoCompleteTextView>
注意:这仅用于试用目的。实际上,我想把这个 AutoCompleteTextView 放在一个 AlertDialog 中。所以我主要有两个疑问:
1>creating an AutoCompleteTextView inside alertDialog
2>Generating results in that AutoCompleteTextView
如果有什么不清楚的地方请在 cmets 中询问。提前谢谢并原谅我的英语和对 Android 开发的无知。
【问题讨论】:
-
什么是 xml 中的第 47 行
-
能否给我们看一下整个xml,请指出哪一行是47?
-
这是第 47 行的代码:
-
确保
YourActivity extends FragmentActivity
标签: android google-places-api android-alertdialog autocompletetextview