当前位置: 首页 > 知识库问答 >
问题:

Google PlaceAutocompleteFragment因错误崩溃

罗渝
2023-03-14

在我的应用程序主页中,google placeauto completefragment在对话框栏内的按钮上打开,该位置用于搜索查询。问题是,当我尝试通过再次按下按钮来更改位置时,应用程序崩溃,出现以下错误。

*android.view.InflateException: Binary XML file line #24: Binary XML file line #24: Error inflating class fragment
Duplicate id 0x7f0e00db, tag null, or parent id 0xffffffff with another fragment for com.google.android.gms.location.places.ui.PlaceAutocompleteFragment*

这是按钮按活动及其调用的方法。

case R.id.text_area:
            EditLocation();
            break;

private void EditLocation() {

    final Dialog dialog = new Dialog(context);
    dialog.setContentView(R.layout.area);
    dialog.setTitle("Please enter the location");
    PlaceAutocompleteFragment autocompleteFragment = (PlaceAutocompleteFragment)
            getFragmentManager().findFragmentById(R.id.autocomplete_fragment);


    ((EditText)autocompleteFragment.getView().findViewById(R.id.place_autocomplete_search_input)).setHint("Search Location");
    //((EditText)autocompleteFragment.getView().findViewById(R.id.place_autocomplete_search_input)).setTextSize(10.0f);
    //txtlocation=(TextView) findViewById(R.id.dialogLocationText);

    autocompleteFragment.setOnPlaceSelectedListener(this);
    Button dialogButtonSave = (Button) dialog.findViewById(R.id.btnOK);
    // if button is clicked, close the custom dialog
    dialogButtonSave.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            //area=dialogLocation.getText().toString();
            location.setText(area);
            dialog.dismiss();
            //autocompleteFragment.setText("");

        }
    });
    dialog.show();


}

下面是xml代码

<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:gravity="center"
    android:orientation="vertical">
    <android.support.v7.widget.CardView
        android:layout_width="fill_parent"
        android:layout_marginTop="10dp"
        android:layout_height="35dp"
        android:layout_gravity="center_vertical"
        android:layout_marginBottom="10dp"
        android:layout_weight=".335"
        android:gravity="center"
        android:textSize="13sp"
        android:background="@android:color/white"
        >

        <fragment
            android:id="@+id/autocomplete_fragment"
            android:name="com.google.android.gms.location.places.ui.PlaceAutocompleteFragment"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />
    </android.support.v7.widget.CardView>


<Button
    android:id="@+id/btnOK"
    android:layout_width="350dp"
    android:layout_margin="10dp"
    android:layout_height="35dp"
    android:text="OK"
    android:background="@drawable/custom_btn_orange"/>
</LinearLayout>

以下是logcat

我已经研究了很多问题,几乎所有的答案都是在ondestroyview()中添加一些代码行,而我没有这些代码行。在第一次点击片断的时候,问题是当我再次按下按钮来改变应用程序完全粉碎的位置。欢迎任何建议。多谢了。

共有1个答案

鄂昌胤
2023-03-14

在地图片段中尝试以下操作:

 public void onDestroyView() {
    super.onDestroyView();
    FragmentManager fm = getActivity().getSupportFragmentManager();
    Fragment fragment = (fm.findFragmentById(R.id.map));
    FragmentTransaction ft = fm.beginTransaction();
    ft.remove(fragment);
    ft.commit();
}
 类似资料:
  • Python 3.5。2. Ubuntu 16.04 LTS 尝试使用pip3安装某些软件包时,无论参数如何,它都会返回以下结果: 我试图通过以下方式重新安装python3 pip来修复它: 但那没有帮助。 我发现它与我安装的软件包有关,这些软件包是用

  • 应用程序由于stacktrace的StackOverflow错误而不时崩溃(见下文)。 该错误意外地出现在各种方案中。我们无法模拟它或预测它的发生。 提前谢谢你。 Stacktrace错误(缩短版):

  • 当我在1到9之间选择一个数字并在控制台中输入一个数字时,该方法会工作并进行正确的移动。但我的问题是如何避免当我输入一个字母而不是一个数字时,程序就崩溃了。

  • 注意:我的问题被关闭之前,我尝试了这里提到的解决方案-未知错误:会话删除,因为页面崩溃从未知错误:无法确定加载状态从标签崩溃与ChromeDriver硒-添加这些选项-options.add参数("--disable-dev-shm-用法");options.add参数("--no-沙盒"); -- 我仍然看到的问题 在selenium网格中运行时,在某些情况下,单个测试会出现以下错误: 方法1:

  • 有人尝试过新的火力点坠毁报告吗?

  • 我想截图一个网页,但无论我做什么木偶总是崩溃。 我将上面的代码保存为web.js,并在cmd中执行节点web.js。它在Chrome窗口出现2秒后就崩溃了,页面没有加载。 (节点:27064)UnhandledPromiserEjectionWarning:#(使用显示创建警告的位置)(节点:27064)UnhandledPromiserEjectionWarning:未处理的承诺拒绝。这个错误可