我刚刚开始学习ADT,并且陷入了创建片段的困境。 我所做的是遵循http://developer.android.com/training/basics/fragments/creating.html的教程。
但是,当我运行它时,它会给我一个“Android中的类错误通知”,并且我的手机上显示“app was stopped”。 我确实尝试使MainActivity扩展FragmentActivty,但它没有用。除了在教程中,它还提到minSdkVersion是greate还是等于11,使用片段的活动只需要扩展Activity。 / p>
这是ArticleFragment.java
package com.example.sample3;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
public class ArticleFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.article_view, container, false);
}
}
这是MainActivity.java:
package com.example.sample3;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
public class MainActivity extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
这是main_activity的main.xml布局
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:baselineAligned="false">
<fragment
android:name="com.example.sample3.ArticleFragment"
android:id="@+id/article_fragment"
android:layout_width="wrap_content"
android:layout_height="match_parent" />
</LinearLayout>
android:minSdkVersion="13"
android:targetSdkVersion="18"
我真的希望天才们能花点时间帮我解决问题。我非常感激。
答案 0 :(得分:1)
您好像缺少 article_view xml文件。文章片段需要这个...或者您的布局中是否可以使用它?
答案 1 :(得分:0)
您要扩展的Fragment
来自支持库,而您没有使用FragmentActivity
,因此截至目前您的代码将无法运行。使用当前配置,您需要扩展android.app.Fragment
答案 2 :(得分:0)
将此'import android.support.v4.app.Fragment'更改为'android.app.Fragment'并尝试。
答案 3 :(得分:0)
尝试使用最新的库
import android.support.v4.app.Fragment;
使用FragmentActivity
代替Activity
import import android.support.v4.app.FragmentActivity;
{{1}}