Intereting Posts
Ошибка записи в медиатеке Android. -19 runTimeException Android 4.3: BLE: поведение фильтра startLeScan () Библиотека дизайна Android CoordinatorLayout, AppBarLayout и DrawerLayout Android.support.v7.widget.CardView не удалось найти (Android Studio 1.1 Preview) Обработка изменений идентификатора регистрации в Google Cloud Messaging на Android Повторная упаковка .jar-s в Android .aar library Большие промежутки между элементами RecyclerView при прокрутке вниз Как (и где) исправить android.os.BadParcelableException: ClassNotFoundException при unmarshalling: RecyclerView $ SavedState? Android Предотвращение двойного нажатия на кнопку Android Studio: импорт проекта в существующий проект Android Emulator: выберите AVD (Android Virtual Device) для запуска по умолчанию Android M: программно отменять разрешения Повторная настройка обратного вызова на основной поток Попытайтесь включить основной класс (java. * Или javax. *) В нечто иное, чем основная библиотека Просмотр Recycler внутри NestedScrollView вызывает прокрутку для начала в середине

Исключение nullpointer в oncreateView () фрагмента

Этот код ниже показывает часть активности, в которой добавлен фрагмент.


FragmentTransaction ft = getSupportFragmentManager().beginTransaction(); ft.replace(R.id.fragment_container, srkt_frag); ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE); ft.commit(); TabSpec specs1=mTab.newTabSpec("tag1"); specs1.setContent(R.id.fragment_container); specs1.setIndicator("SRK/T"); mTab.addTab(specs1); 

MTab – TabHost, где srkt_frag отображается как содержимое. Класс фрагмента показан ниже


 public class Srkt_x extends Fragment { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // TODO Auto-generated method stub View view=inflater.inflate(R.layout.activity_srkt_x,container,false); TextView text = (TextView) getView().findViewById(R.id.srkt_power); Float result=getArguments().getFloat("RESULT"); text.setText(String.valueOf(result)); return view; } } 

После выполнения проекта я получаю исключение nullpointer в строке 21, т.е.

 TextView text = (TextView) getView().findViewById(R.id.srkt_power); 

Мой XML-файл показан ниже


 <RelativeLayout 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" tools:context=".Srkt_x" > <ScrollView android:id="@+id/srkt_scrollView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentLeft="true" android:layout_alignParentRight="true" android:layout_alignParentTop="true" android:background="@color/Black" > <RelativeLayout android:layout_width="match_parent" android:layout_height="433dp" > <TextView android:id="@+id/srkt_power" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBottom="@+id/iolpower" android:layout_toRightOf="@+id/iolpower" android:clickable="false" android:ems="10" android:enabled="false" android:fadingEdge="horizontal" android:focusable="false" android:focusableInTouchMode="false" android:gravity="center|left" android:longClickable="false" android:paddingTop="10dp" android:textColor="@color/DeepSkyBlue" android:textSize="15sp" /> <TextView android:id="@+id/iolpower" android:layout_width="100dp" android:layout_height="30dp" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:layout_marginLeft="16dp" android:layout_marginTop="20dp" android:gravity="bottom|center" android:textColor="@color/White" android:inputType="text" android:text="@string/power" android:textSize="20sp" android:visibility="visible" /> <TableLayout android:layout_width="228dp" android:layout_height="match_parent" android:layout_below="@+id/srkt_power" android:layout_centerHorizontal="true" android:layout_marginTop="33dp" android:paddingTop="10dp" > <TableRow android:id="@+id/srkttableRow1" android:layout_height="wrap_content" android:background="@color/SkyBlue" android:orientation="vertical" android:showDividers="middle" > <TextView android:id="@+id/iolCol" android:layout_height="wrap_content" android:layout_gravity="left" android:layout_weight="1" android:background="@color/SkyBlue" android:gravity="center" android:text="@string/iol" android:textColor="@color/White" android:textSize="20sp" /> <TextView android:id="@+id/refCol" android:layout_height="wrap_content" android:layout_gravity="right" android:layout_weight="1" android:background="@color/SkyBlue" android:gravity="center" android:text="@string/refr" android:textColor="@color/White" android:textSize="20sp" /> </TableRow> <TableRow android:id="@+id/srkttableRow2" android:layout_height="wrap_content" android:layout_weight="1" android:background="@color/Black" > <TextView android:id="@+id/srktrnd2" android:layout_gravity="left|center" android:layout_weight="1" android:gravity="center" android:textColor="@color/White" android:textSize="15sp" /> <TextView android:id="@+id/srktref2" android:layout_gravity="right|center" android:layout_weight="1" android:gravity="center" android:textColor="@color/White" android:textSize="15sp" /> </TableRow> <TableRow android:id="@+id/srkttableRow3" android:layout_height="wrap_content" android:layout_weight="1" android:background="@color/Black" > <TextView android:id="@+id/srktrnd3" android:layout_gravity="left|center" android:layout_weight="1" android:gravity="center" android:textColor="@color/White" android:textSize="15sp" /> <TextView android:id="@+id/srktref3" android:layout_gravity="right|center" android:layout_weight="1" android:gravity="center" android:textColor="@color/White" android:textSize="15sp" /> </TableRow> <TableRow android:id="@+id/srkttableRow4" android:layout_height="wrap_content" android:layout_weight="1" android:background="@color/Black" > <TextView android:id="@+id/srktrnd4" android:layout_gravity="left|center" android:layout_weight="1" android:gravity="center" android:textColor="@color/White" android:textSize="15sp" /> <TextView android:id="@+id/srktref4" android:layout_gravity="right|center" android:layout_weight="1" android:gravity="center" android:textColor="@color/White" android:textSize="15sp" /> </TableRow> <TableRow android:id="@+id/srkttableRow5" android:layout_height="wrap_content" android:layout_weight="1" android:background="@color/Black" > <TextView android:id="@+id/srktrnd5" android:layout_gravity="left|center" android:layout_weight="1" android:gravity="center" android:textColor="@color/White" android:textSize="15sp" /> <TextView android:id="@+id/srktref5" android:layout_gravity="right|center" android:layout_weight="1" android:gravity="center" android:textColor="@color/White" android:textSize="15sp" /> </TableRow> <TableRow android:id="@+id/srkttableRow6" android:layout_height="wrap_content" android:layout_weight="1" android:background="@color/Black" > <TextView android:id="@+id/srktrnd6" android:layout_gravity="left|center" android:layout_weight="1" android:gravity="center" android:textColor="@color/White" android:textSize="15sp" /> <TextView android:id="@+id/srktref6" android:layout_gravity="right|center" android:layout_weight="1" android:gravity="center" android:textColor="@color/White" android:textSize="15sp" /> </TableRow> <TableRow android:id="@+id/srkttableRow7" android:layout_height="wrap_content" android:layout_weight="1" android:background="@color/Black" > <TextView android:id="@+id/srktrnd7" android:layout_gravity="left|center" android:layout_weight="1" android:background="@color/DeepSkyBlue" android:gravity="center" android:textColor="@color/White" android:textSize="15sp" /> <TextView android:id="@+id/srktref7" android:layout_gravity="right|center" android:layout_weight="1" android:background="@color/DeepSkyBlue" android:gravity="center" android:textColor="@color/White" android:textSize="15sp" /> </TableRow> <TableRow android:id="@+id/srkttableRow8" android:layout_height="wrap_content" android:layout_weight="1" android:background="@color/Black" > <TextView android:id="@+id/srktrnd8" android:layout_gravity="left|center" android:layout_weight="1" android:gravity="center" android:textColor="@color/White" android:textSize="15sp" /> <TextView android:id="@+id/srktref8" android:layout_gravity="right|center" android:layout_weight="1" android:gravity="center" android:textColor="@color/White" android:textSize="15sp" /> </TableRow> <TableRow android:id="@+id/srkttableRow9" android:layout_height="wrap_content" android:layout_weight="1" android:background="@color/Black" > <TextView android:id="@+id/srktrnd9" android:layout_gravity="left|center" android:layout_weight="1" android:gravity="center" android:textColor="@color/White" android:textSize="15sp" /> <TextView android:id="@+id/srktref9" android:layout_gravity="right|center" android:layout_weight="1" android:gravity="center" android:textColor="@color/White" android:textSize="15sp" /> </TableRow> <TableRow android:id="@+id/srkttableRow10" android:layout_height="wrap_content" android:layout_weight="1" android:background="@color/Black" > <TextView android:id="@+id/srktrnd10" android:layout_gravity="left|center" android:layout_weight="1" android:gravity="center" android:textColor="@color/White" android:textSize="15sp" /> <TextView android:id="@+id/srktref10" android:layout_gravity="right|center" android:layout_weight="1" android:gravity="center" android:textColor="@color/White" android:textSize="15sp" /> </TableRow> <TableRow android:id="@+id/srkttableRow11" android:layout_height="wrap_content" android:layout_weight="1" android:background="@color/Black" > <TextView android:id="@+id/srktrnd11" android:layout_gravity="left|center" android:layout_weight="1" android:gravity="center" android:textColor="@color/White" android:textSize="15sp" /> <TextView android:id="@+id/srktref11" android:layout_gravity="right|center" android:layout_weight="1" android:gravity="center" android:textColor="@color/White" android:textSize="15sp" /> </TableRow> <TableRow android:id="@+id/srkttableRow12" android:layout_height="wrap_content" android:layout_weight="1" android:background="@color/Black" > <TextView android:id="@+id/srktrnd12" android:layout_gravity="left|center" android:layout_weight="1" android:gravity="center" android:textColor="@color/White" android:textSize="15sp" /> <TextView android:id="@+id/srktref12" android:layout_gravity="right|center" android:layout_weight="1" android:gravity="center" android:textColor="@color/White" android:textSize="15sp" /> </TableRow> </TableLayout> </RelativeLayout> </ScrollView> 

Файл журнала показан ниже


  03-26 23:49:22.333: D/AndroidRuntime(497): Shutting down VM 03-26 23:49:22.333: W/dalvikvm(497): threadid=1: thread exiting with uncaught exception (group=0x40015560) 03-26 23:49:22.353: E/AndroidRuntime(497): FATAL EXCEPTION: main 03-26 23:49:22.353: E/AndroidRuntime(497): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.iolcalci/com.example.iolcalci.Menu}: java.lang.NullPointerException 03-26 23:49:22.353: E/AndroidRuntime(497): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1647) 03-26 23:49:22.353: E/AndroidRuntime(497): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663) 03-26 23:49:22.353: E/AndroidRuntime(497): at android.app.ActivityThread.access$1500(ActivityThread.java:117) 03-26 23:49:22.353: E/AndroidRuntime(497): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931) 03-26 23:49:22.353: E/AndroidRuntime(497): at android.os.Handler.dispatchMessage(Handler.java:99) 03-26 23:49:22.353: E/AndroidRuntime(497): at android.os.Looper.loop(Looper.java:123) 03-26 23:49:22.353: E/AndroidRuntime(497): at android.app.ActivityThread.main(ActivityThread.java:3683) 03-26 23:49:22.353: E/AndroidRuntime(497): at java.lang.reflect.Method.invokeNative(Native Method) 03-26 23:49:22.353: E/AndroidRuntime(497): at java.lang.reflect.Method.invoke(Method.java:507) 03-26 23:49:22.353: E/AndroidRuntime(497): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) 03-26 23:49:22.353: E/AndroidRuntime(497): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) 03-26 23:49:22.353: E/AndroidRuntime(497): at dalvik.system.NativeStart.main(Native Method) 03-26 23:49:22.353: E/AndroidRuntime(497): Caused by: java.lang.NullPointerException 03-26 23:49:22.353: E/AndroidRuntime(497): at com.example.iolcalci.Srkt_x.onCreateView(Srkt_x.java:21) 03-26 23:49:22.353: E/AndroidRuntime(497): at android.support.v4.app.Fragment.performCreateView(Fragment.java:1460) 03-26 23:49:22.353: E/AndroidRuntime(497): at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:911) 03-26 23:49:22.353: E/AndroidRuntime(497): at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1088) 03-26 23:49:22.353: E/AndroidRuntime(497): at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:682) 03-26 23:49:22.353: E/AndroidRuntime(497): at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1444) 03-26 23:49:22.353: E/AndroidRuntime(497): at android.support.v4.app.FragmentActivity.onStart(FragmentActivity.java:551) 03-26 23:49:22.353: E/AndroidRuntime(497): at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1129) 03-26 23:49:22.353: E/AndroidRuntime(497): at android.app.Activity.performStart(Activity.java:3791) 03-26 23:49:22.353: E/AndroidRuntime(497): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1620) 03-26 23:49:22.353: E/AndroidRuntime(497): ... 11 more 

Я не могу решить проблему .any решение?

EDIT: строка 22: Float result = getArguments (). GetFloat («РЕЗУЛЬТАТ»);

EDIT 2: настройка аргументов, как показано ниже:

 IOLPower_srkt=Srkt(); Bundle srkt_bundle=new Bundle(); srkt_bundle.putFloat("RESULT", IOLPower_srkt); srkt_frag.setArguments(srkt_bundle); 

Здесь Srkt () возвращает значение с плавающей запятой


 IOLPower_srkt=Srkt(); Bundle srkt_bundle=new Bundle(); srkt_bundle.putFloat("RESULT", IOLPower_srkt); srkt_frag.setArguments(srkt_bundle); IOLPower_bink=Binkhorst(); Bundle bink_bundle=new Bundle(); bink_bundle.putFloat("RESULT", IOLPower_bink); bink_frag.setArguments(bink_bundle); IOLPower_srk2=Srk2(); if((Math.ceil(IOLPower_srk2)-IOLPower_srk2)>0.5){ srk2_rnd=(float) Math.floor(IOLPower_srk2); }else{ srk2_rnd=(float) Math.ceil(IOLPower_srk2); } Bundle srk2_bundle=new Bundle(); srk2_bundle.putFloat("RESULT", srk2_rnd); srk2_frag.setArguments(srk2_bundle); IOLPower_holl=Holladay(); Bundle holl_bundle=new Bundle(); holl_bundle.putFloat("RESULT", IOLPower_holl); holl_frag.setArguments(holl_bundle); } }); FragmentTransaction ft = getSupportFragmentManager().beginTransaction(); ft.replace(R.id.fragment_container, srkt_frag); ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE); ft.commit(); TabSpec specs1=mTab.newTabSpec("tag1"); specs1.setContent(R.id.fragment_container); specs1.setIndicator("SRK/T"); mTab.addTab(specs1); TabSpec specs2=mTab.newTabSpec("tag2"); specs2.setContent(R.id.fragment_container); specs2.setIndicator("SRK II"); mTab.addTab(specs2); TabSpec specs3=mTab.newTabSpec("tag3"); specs3.setContent(R.id.fragment_container); specs3.setIndicator("HOLLADAY"); mTab.addTab(specs3); TabSpec specs4=mTab.newTabSpec("tag4"); specs4.setContent(R.id.fragment_container); specs4.setIndicator("BINKHORST"); mTab.addTab(specs4); 

Solutions Collecting From Web of "Исключение nullpointer в oncreateView () фрагмента"

Как решить, ключ вашего журнала Caused by: java.lang.NullPointerException at com.example.iolcalci.Srkt_x.onCreateView(Srkt_x.java:21)

Говорит, что в Srkt_x.java line 21 есть Null Pointer Exception поэтому перейдите к строке 21 и посмотрите, какое из значений равно null и генерирует исключение.

В вашем коде проблема заключается в TextView text = (TextView) getView().findViewById(R.id.srkt_power); Где getView() имеет значение null поскольку он не был создан.

Право:

 public class Srkt_x extends Fragment { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view=inflater.inflate(R.layout.activity_srkt_x,container,false); // use view instead of getView() TextView text = (TextView) view.findViewById(R.id.srkt_power); if(getArguments() != null) { Float result=getArguments().getFloat("RESULT"); text.setText(String.valueOf(result)); } else { text.setText("result not included"); } return view; } } 

Вам нужно использовать завышенный вид, чтобы получить желаемый TextView по id.

В конце onCreateView при return view; getView() тогда getView() вернет значение view вместо null .


Как предлагается в google doc, см. TitlesFragment и DetailsFragment используйте что-то подобное, чтобы задать аргументы

 public static Srkt_x newInstance(Float result) { Srkt_x f = new Srkt_x (); // Supply index input as an argument. Bundle args = new Bundle(); args.putFloat("RESULT", result); f.setArguments(args); return f; } 

Вместо getView() используйте только что getView() представление, так как представление еще не возвращено, вы получите NPE. Может быть, вот так:

 View view=inflater.inflate(R.layout.activity_srkt_x,container,false); TextView text = (TextView) view.findViewById(R.id.srkt_power); //*** do something*** return view; 

замещать

 TextView text = (TextView) getView().findViewById(R.id.srkt_power); 

с

 TextView text = (TextView) getActivity().findViewById(R.id.srkt_power); 

Причина вашей ошибки и путаницы объясняется тем, что вы не понимаете, как работает цикл событий Android.

Вы вызываете getView() в то время, когда фрагмент еще не имеет этого. Фрагмент будет иметь представление только после того, как onCreateView закончит работу. Точка onCreateView – это «чтобы фрагмент onCreateView экземпляр своего пользовательского интерфейса».

Вы должны сделать getActivity().findViewById .

Попробуйте сделать то, что вам нужно сделать внутри метода onViewCreated() , который вы должны переопределить. Не забудьте вызвать super() на нем.