我已经开始了解Android Fragments,但这对我来说仍然很困惑。我需要一些帮助。因为它说自API级别11以来支持android片段,但您可以下载“support.v4”库包用于较低级别的API。首先,我创建新的项目来尝试API级别15的片段。然后我做了同样的API级别8,它不起作用...我导入外部jar,它看到所有需要导入,因为它应该...似乎这是问题吗?
这是我的主要课程:
import android.support.v4.app.FragmentActivity;
import android.os.Bundle;
public class Fragment2Activity extends FragmentActivity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}
我的主要布局XML:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello" />
<fragment
android:name="com.frag.Fragment2.frag"
android:id="@+id/frag"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
我的片段类:
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
public class frag extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
// Inflate the layout for this fragment
View v = inflater.inflate(R.layout.hello_fragment, container, false);
return v;
}
}
我的片段布局XML:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:layout_width="fill_parent"
android:layout_height="match_parent"
android:text="THIS IS FRAGMENT"
android:background="@drawable/ic_launcher"
/>
</LinearLayout>
固定
答案 0 :(得分:6)
您仍在使用不存在的android.view.fragment
类。您必须在旧设备上切换到android.support.v4.app.fragment
。
答案 1 :(得分:0)
如果由于minSdkVersion而使用较低的API,则应该知道可以使用最新的sdk并将minSdkVersion设置为较低的值。它们不一样。
答案 2 :(得分:0)
好的,所以我遇到了同样的问题,最后让它运转了。首先确保您拥有最新的ADT工具。
1)进入每个使用片段的活动,让它们从FragmentActivity
而不是Activity
延伸
2)如果您尚未将支持库导入构建中,请右键单击您的项目 - > Android工具 - >添加支持库
3)确保您的xml标签为<fragment />
而不是<android.support.v4.app.fragment />
希望能帮助你,让我花一点时间让它发挥作用。
答案 3 :(得分:0)
实际上,这个问题来自ADT工具。
重新排序Java Build Path中的“Order and Export” src&gt; gen&gt;私人&gt;其他...
添加支持库&gt;&gt;机器人支撑-v4.jar