[英]fragment doesnt show the layout
我有一個這樣的片段 :
public class ContactFragment extends Fragment {
@Override
public void onAttach(Activity activity) {
super.onAttach(activity);
}
@Override
public void onDetach() {
super.onDetach();
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
inflater.inflate(R.layout.contacts_picker_activity, null);
return super.onCreateView(inflater, container, savedInstanceState);
}
@Override
public void onViewCreated(View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
}
}
和contacts_picker_activity布局:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="this a test "
android:id="@+id/textView" android:layout_gravity="center"/>
</LinearLayout>
問題是當我運行我的應用程序時, onCreateView方法運行但未顯示布局。
我的logcat中沒有任何錯誤。
試試這個
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState)
{
View v=inflater.inflate(R.layout.contacts_picker_activity, null);
return v;
}
您應該返回膨脹的View
。
更改
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
inflater.inflate(R.layout.contacts_picker_activity, null);
return super.onCreateView(inflater, container, savedInstanceState);
}
至
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
return inflater.inflate(R.layout.contacts_picker_activity, container , false);
}
您需要返回要在onCreateView中膨脹的視圖
只需返回放大的視圖。
public class ContactFragment extends Fragment {
@Override
public void onAttach(Activity activity) {
super.onAttach(activity);
}
@Override
public void onDetach() {
super.onDetach();
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
View v= inflater.inflate(R.layout.contacts_picker_activity, null);
return v;
}
@Override
public void onViewCreated(View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.