Can someone help me about this error? " java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.equals(java.lang.Object)' on a null object reference"
and it keeps saying my error is around this line -->
if (searchRiderMowdel.getusername().equals(textViewValue))
and I tried some methods and it keeps crashing as usual
public class EmployeeUserFragment extends Fragment {
Button btnPlot;
ImageButton Searchemployee;
Redirectinglog redirectinglog;
@BindView(R.id.Searchemployee) AutoCompleteTextView autoTextValue;
Api api;
private Handler searchHandler = new Handler();
ArrayList<String> employeename;
TextView latitudesearch,longitudesearch,Fullnamesearch, gpssearch, departsearch, Idsearch, emailsearch;
public EmployeeUserFragment() {
}
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_employeeuser, container, false);
return view;
}
@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
autoTextValue = view.findViewById(R.id.Searchemployee);
btnPlot = view.findViewById(R.id.btnPlot);
Searchemployee = view.findViewById(R.id.imageButton);
employeename = new ArrayList<>();
api = RetrofitClientInstance.GetResultAPI().create(Api.class);
Call<List<EmployeeName>> employeelistcall = api.getemploeyeename();
employeelistcall.enqueue(new Callback<List<EmployeeName>>() {
@Override
public void onResponse(Call<List<EmployeeName>> call, Response<List<EmployeeName>> response) {
if(!response.isSuccessful()){
Toast.makeText(getActivity(), response.code(), Toast.LENGTH_SHORT).show();
}
List<EmployeeName> autoCompleteModelList = response.body();
for (EmployeeName completeModel : autoCompleteModelList){
String employeenamelist = "";
employeenamelist += completeModel.getusername();
employeename.add(employeenamelist);
}
ArrayAdapter<String> newAdapter = new ArrayAdapter<String>(getActivity(), android.R.layout.simple_list_item_1, employeename);
autoTextValue.setAdapter(newAdapter);
}
@Override
public void onFailure(Call<List<EmployeeName>> call, Throwable t) {
Toast.makeText(getActivity(), t.getMessage(), Toast.LENGTH_SHORT).show();
}
});
redirectinglog = new Redirectinglog(getActivity());
btnPlot.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (latitudesearch.length() == 0 && longitudesearch.length() == 0){
Toast.makeText(getActivity(), "Please Update Location", Toast.LENGTH_SHORT).show();
}
}
});
Searchemployee.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
hideSoftKeyboard(getActivity());
getEmployeeLocation();
employeeRunnable.run();
}
});
}
private Runnable employeeRunnable = new Runnable() {
@Override
public void run() {
getEmployeeLocation();
searchHandler.postDelayed(this, 5000);
}
};
private void getEmployeeLocation(){
Call<List<employeesearchcoordinate>> riderInformationCall = api.getemployeecoordinate();
riderInformationCall.enqueue(new Callback<List<employeesearchcoordinate>>() {
@Override
public void onResponse(Call<List<employeesearchcoordinate>> call, Response<List<employeesearchcoordinate>> response) {
if(!response.isSuccessful()){
Toast.makeText(getActivity(), response.code(), Toast.LENGTH_SHORT).show();
}
List<employeesearchcoordinate> riderModelList = response.body();
String textViewValue = autoTextValue.getText().toString().trim();
if (textViewValue.equals("")){
Toast.makeText(getActivity(), "No value detected", Toast.LENGTH_SHORT).show();
}
else{
for (employeesearchcoordinate searchRiderMowdel : riderModelList){
if (searchRiderMowdel.getusername().equals(textViewValue)){
Fullnamesearch.setText(searchRiderMowdel.getgps_id());
latitudesearch.setText(searchRiderMowdel.getRTLatitude());
longitudesearch.setText(searchRiderMowdel.getRTLongitude());
gpssearch.setText(searchRiderMowdel.getRTNumber());
departsearch.setText(searchRiderMowdel.getRTdevice_dep());
Idsearch.setText(searchRiderMowdel.getRTcard_uid());
emailsearch.setText(searchRiderMowdel.getRTemail());
}
}
}
}
@Override
public void onFailure(Call<List<employeesearchcoordinate>> call, Throwable t) {
Toast.makeText(getActivity(), t.getMessage(), Toast.LENGTH_SHORT).show();
}
});
}
public void hideSoftKeyboard(Activity activity){
if (activity.getCurrentFocus() == null){
return;
}
InputMethodManager inputMethodManager = (InputMethodManager)activity.getSystemService(Context.INPUT_METHOD_SERVICE);
inputMethodManager.hideSoftInputFromWindow(activity.getCurrentFocus().getWindowToken(), 0);
}
}