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

当我将片段添加到XML时,我的Android应用程序崩溃了

沈俊明
2023-03-14

这是主要活动XML

<?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:id="@+id/activity_main"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:paddingTop="@dimen/activity_vertical_margin"
        android:background="#71b7d6"
        tools:context="com.csdelta.haroon.fragmentpractice.MainActivity">
<!--Binary XML file line #13  --> 
 <fragment    
        android:id="@+id/my_frag"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:name="com.csdelta.haroon.fragmentpractice.MyFragment"/>
    </LinearLayout>

这是片段活动XML

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="#f7dc0f"
        tools:context="com.csdelta.haroon.fragmentpractice.MyFragment">

        <TextView
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:text="Hello, This is Fragment"
            android:textSize="25dp"
            android:layout_margin="20dp"
            android:textColor="#000"
            />

    </LinearLayout>

这是主活动Java文件

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        Log.d("Haroon", "onCreate");
        setContentView(R.layout.activity_main);

    }
}

这是片段Java文件

public class MyFragment extends Fragment {

    @Nullable
    @Override
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
        Log.d("Haroon", "onCreateView");
        return inflater.inflate(R.layout.fragment_fragment_layout, container, false);
    }
}

我收到的logcat消息说:

java.lang.RuntimeException:无法启动活动ComponentInfo{com.csdelta.haroon.fragmentpractice/com.csdelta.haroon.fragmentpractice.MainActivity}:android.view.InflateException:二进制XML文件行#13:二进制XML文件行#13:inflating类片段引起的错误:android.view.InflateException:二进制XML文件行#13:二进制XML文件行#13:inflating类片段引起的错误:android.view.InflateException:二进制XML文件行#13:inflating类片段引起的错误:android.app.片段$InstantiationException:试图实例化一个类com.csdelta.haroon.fragmentpractice.我的片段

那不是碎片

以下是完整的日志:https://pastebin.com/iss7ui16

共有3个答案

齐修贤
2023-03-14

如果出现相同的错误,请尝试使用FrameLayout作为

   <FrameLayout
    android:id="@+id/container"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_marginBottom="70dp"/>

并将片段称为

    getSupportFragmentManager().beginTransaction().replace(R.id.container, new MyFragment()).commit();
江子石
2023-03-14

像这样将片段隐藏到FrameLayout标记

<FrameLayout   
    android:id="@+id/my_frag"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:name="com.csdelta.haroon.fragmentpractice.MyFragment"/>
毕瀚
2023-03-14

我认为你的片段扩展支持片段,所以你的活动需要扩展AppCompatactive而不是活动。

 类似资料:
  • 我正在尝试添加滚动视图。在我向XML布局文件添加ScrollView之前,一切都正常工作,然后我的应用程序就崩溃了。我该如何解决这个问题?请您建议我如何解决将ScrollView添加到布局而不对视图属性进行太多更改,特别是id的ImageView应该是。 下面是XML代码:

  • 当我尝试在Android Studio3中添加图像时,应用程序就会崩溃。请帮帮忙。 logcat: activity_main.xml 主要活动.java 当我删除ImageView时,应用程序就可以正常工作了。我已经尝试了一切,调整图像大小,重新安装android Studio。 有人能把问题弄清楚吗?

  • 注意:在我添加广告之前,我的应用程序运行良好,使用相同的方法 当我试图将adview添加到我的应用程序时,它会使我的应用程序崩溃,所以我删除了它,但仍然给我这个这是logcat 10-12 21:33:19.765 4993-4993/com。fm360。almorfis E/AndroidRuntime:致命异常:主进程:com。fm360。阿尔莫菲斯,PID:4993爪哇。lang.Runti

  • 我的日志猫: 2022-07-29 21:42:03.128 24303-24303/com.example。newcadviewerapp E/AndroidRuntime:致命异常:主进程:com.example。newcadviewerapp,PID:24303 java.lang.RuntimeException:无法启动活动组件信息{com.example.newcadviewerapp

  • 我目前正试图在android studio中创建一个日历应用程序。该应用包含一个具有不同“视图”的日历,例如月视图、周视图和日视图。 该应用程序使用片段作为页面,每个视图都是一个活动。 这是片段和按钮初始化每个视图的代码 在代码中显示日历月度视图的第一个按钮称为“Calendaractive”正常工作,但当单击显示日历每周视图的第二个按钮时,会导致应用程序崩溃并在logcat中给出以下错误 我不确

  • 更新到QRCodeReaderView最新版本后,我的应用程序崩溃仍然没有停止,不同的问题得到。致命异常:java.lang.RuntimeException:无法连接到java:580)在android.view.choreographer.doFrame(choreographer.java:550)在android.view.choreographer$FrameDisplayEventRe