This code below shows part of activity where the fragment is added.
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 is TabHost where the srkt_frag is displayed as the content. the fragment class is shown below
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;
}
}
after executing the project i get nullpointerexception at line 21 i.e at
TextView text = (TextView) getView().findViewById(R.id.srkt_power);
my xml file is shown below
<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>
the log file is shown below
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
I am not able to figure out the problem .any solution?
EDIT : line 22:Float result=getArguments().getFloat("RESULT");
EDIT 2 : setting arguments as shown below:
IOLPower_srkt=Srkt();
Bundle srkt_bundle=new Bundle();
srkt_bundle.putFloat("RESULT", IOLPower_srkt);
srkt_frag.setArguments(srkt_bundle);
here Srkt() returns float value check detailed code
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);
How to solve: the clue of your log is Caused by: java.lang.NullPointerException
at com.example.iolcalci.Srkt_x.onCreateView(Srkt_x.java:21)
which says that there is a Null Pointer Exception
at Srkt_x.java line 21
so go to line 21 and see which of the values is equal to null
and throw the exception.
The problem with your code is with TextView text = (TextView) getView().findViewById(R.id.srkt_power);
where getView()
is null
as it has not been created.
The right code is:
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;
}
}
you have to use the inflated view in order to get the wanted TextView by id.
At the end of onCreateView
when the return view;
is executed, getView()
will return the view
value instead of null
.
As suggested in the Android documentation page for Fragment, see TitlesFragment
and DetailsFragment
, use something like the code below in order to set arguments
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;
}