I'm creating radio buttons like this in a fragment programmatically in a for loop (i++)
for (int i = 1; i < priceList.length(); i++) {
JSONObject priceObj = (JSONObject) priceList.get(i);
String catName = priceObj.getString("categoryName");
String uid = i*(i+100)+20;
RadioButton rdbtn = new RadioButton(getActivity().getApplicationContext());
rdbtn.setId((row * 2) + i);
rdbtn.setText(catName);
rdbtn.setTextColor(R.color.colorPrimary);
ll.addView(rdbtn);
}
linearLayout.removeAllViews();
linearLayout.addView(ll);
i want to add that uid as tag, but if i add .setTag(uid) it is giving error like below
FATAL EXCEPTION: main Process: com.vistaraitsolutions.hoteladmin, PID: 13629 java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.RadioButton.setTag(java.lang.Object)' on a null object reference at com.vistaraitsolutions.hoteladmin.FragmentStepThreeBooking.addRadioButtons(FragmentStepThreeBooking.java:226) at com.vistaraitsolutions.hoteladmin.FragmentStepThreeBooking$1.onResponse(FragmentStepThreeBooking.java:161) at com.vistaraitsolutions.hoteladmin.FragmentStepThreeBooking$1.onResponse(FragmentStepThreeBooking.java:157) at com.android.volley.toolbox.JsonRequest.deliverResponse(JsonRequest.java:72) at com.android.volley.ExecutorDelivery$ResponseDeliveryRunnable.run(ExecutorDelivery.java:99) at android.os.Handler.handleCallback(Handler.java:739) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:145) at android.app.ActivityThread.main(ActivityThread.java:6856) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1404) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199)
and that tadio buttons not yet added to linear layout yet, aftre loop ony im adding radio group to layout! now i need to set tags.
this is code with setTag()
for (int i = 1; i < priceList.length(); i++) {
JSONObject priceObj = (JSONObject) priceList.get(i);
String catName = priceObj.getString("categoryName");
String uid = i*(i+100)+20;
RadioButton rdbtn = new RadioButton(getActivity().getApplicationContext());
rdbtn.setId((row * 2) + i);
rdbtn.setText(catName);
//rdbtn.setTag(url); here im adding setTag
rdbtn.setTextColor(R.color.colorPrimary);
ll.addView(rdbtn);
}
linearLayout.removeAllViews();
linearLayout.addView(ll);
please help me