I need to delete the item from database and ListView. I can delete the item from ListView but i can't delete it from database. I think the problem is in getting the position of the item from the database i tried to do it in my own but it does not work. I don't know what should I do.Help me to slove this.
myDB = new DbHandler(this);
        userList = new ArrayList<>();
        data = myDB.getListContents();
        numRows = data.getCount();
        if (numRows == 0) {
            Toast.makeText(AddCount.this, "No Items", Toast.LENGTH_LONG).show();
        } else {
            while (data.moveToNext()) {
                user = new User(data.getString(1), data.getString(2));
                userList.add(user);
            }
        }
        adapter = new Two_columnListAdapter(this, R.layout.list_item_layout, userList);
        listView.setAdapter(adapter);
        adapter.notifyDataSetChanged();
listView.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
            @Override
                    public boolean onItemLongClick(final AdapterView<?> arg0, View arg1, final int arg2, final long arg3) {
                        final AlertDialog.Builder delete = new AlertDialog.Builder(AddCount.this);
                        delete.setIcon(R.drawable.ic_baseline_delete_24);
                        delete.setTitle("Are you sure");
                        delete.setMessage("Do you want to delete this item?");
                        delete.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
                                    public void onClick(DialogInterface dialog, int whichButton) {
                                      DbHandler db = new DbHandler(getApplicationContext());
                                        
                                        myDB.deleteData(userList.get(arg2));
                                        userList.remove(arg2);
                                            adapter.notifyDataSetChanged();
                                            Toast.makeText(getApplicationContext(), "Deleted" ,Toast.LENGTH_SHORT).show();
                                    }
                        });`
`Two_columnAdapter.java
public class Two_columnListAdapter extends ArrayAdapter<User> {
    private LayoutInflater layoutInflater;
    private ArrayList<User>users;
    private int mviewResourceId;
    public Two_columnListAdapter(Context context,int textViewResourceId,ArrayList<User>users){
        super(context,textViewResourceId,users);
        this.users = users;
        layoutInflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        mviewResourceId = textViewResourceId;
    }
    public View getView(int position, View convertView, ViewGroup parents){
        convertView = layoutInflater.inflate(mviewResourceId,null);
        User user= users.get(position);
        if (user != null){
            TextView  text = (TextView)convertView.findViewById(R.id.title);
            TextView num = (TextView)convertView.findViewById(R.id.value);
            if (text != null){
                text.setText(user.getText());
            }
            if (num != null){
                num.setText(user.getNum());
            }
        }
        return convertView;
    }
DatabaseHelpher(delete the single row from database)
 public void deleteData(String id) {
        SQLiteDatabase db = this.getWritableDatabase();
        db.delete(TABLE_Inputs, KEY_ID + " =?", new String[]{id});
        db.close();
    }