I am inserting Data into a sqlite database from a tab fragment. My problem is once data is inserted or deleted from the list, the updated list only appears after the app is restarted. How can i make the fragment refresh after new data is added to the list?
Any help with this would be appreciated.
public Tab1() {
// Required empty public constructor
}
// TODO: Rename and change types and number of parameters
public static Tab1 newInstance(String param1, String param2) {
Tab1 fragment = new Tab1();
Bundle args = new Bundle();
args.putString(ARG_PARAM1, param1);
args.putString(ARG_PARAM2, param2);
fragment.setArguments(args);
return fragment;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (getArguments() != null) {
mParam1 = getArguments().getString(ARG_PARAM1);
mParam2 = getArguments().getString(ARG_PARAM2);
}
}
//load tasks into the list
private void loadTaskList() {
ArrayList<String> taskList = dbHelper.getTaskList();
if (mAdapter == null) {
mAdapter = new ArrayAdapter<String>(getActivity(), R.layout.row, R.id.task_title, taskList);
lstTask.setAdapter(mAdapter);
} else {
mAdapter.clear();
mAdapter.addAll(taskList);
mAdapter.notifyDataSetChanged();
}
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View frag1 = inflater.inflate(R.layout.fragment_tab1, container, false);
dbHelper = new DbHelper(getActivity());
lstTask = (ListView)frag1.findViewById(R.id.lstTask);
loadTaskList();
return frag1;
}
// TODO: Rename method, update argument and hook method into UI event
public void onButtonPressed(Uri uri) {
if (mListener != null) {
mListener.onFragmentInteraction(uri);
}
}
}