Everything I tried with setDrawingCacheEnabled and getDrawingCache was not working. The system was making an image but it just looked black. 
Other people on SO seemed to be having a similar problem but the answers seemed either too complicated or irrelevant to my situation. Here are some of the ones I looked at:
- Save view like bitmap, I only get black screen
- Screenshot shows black
- getDrawingCache always returns the same Bitmap
- Convert view to bitmap on Android
- bitmap is not saving properly only black image
- Custom view converting to bitmap returning black image
And here is my code:
    view.setDrawingCacheEnabled(true);
    Bitmap bitmap = view.getDrawingCache();
    try {
        FileOutputStream stream = new FileOutputStream(getApplicationContext().getCacheDir() + "/image.jpg");
        bitmap.compress(CompressFormat.JPEG, 80, stream);
        stream.close();
    } catch (FileNotFoundException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }
    view.setDrawingCacheEnabled(false);
I'm sharing my answer below in case anyone else makes the same mistake I did.
 
     
     
     
    