Autore Topic: Screenshot non eseguito su tutto lo schermo  (Letto 425 volte)

Offline first100

  • Nuovo arrivato
  • *
  • Post: 2
  • Respect: 0
    • Imarish
    • Mostra profilo
    • Getimage
  • Sistema operativo:
    Ubuntu 10.10
Screenshot non eseguito su tutto lo schermo
« il: 15 Ottobre 2013, 11:17:46 CEST »
0
Salve a tutti,

Sto realizzando una semplice applicazione di animazione di un oggetto su surfaceview su cui poi faccio uno screenshot.
Non ho errori di esecuzione tranne che il fatto che lo shot dello schermo non mi visualizza che la parte superiore senza tutta la parte surfaceview.
Come posso risolvere?

Grazie
Codice (Java): [Seleziona]
public class MainActivity extends Activity {
    Animating ball;
    File imageFile;
    View myView;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        ball = new Animating(this);
        setContentView(ball);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        MenuInflater inflater = getMenuInflater();
        inflater.inflate(R.menu.main, menu);
        return true;
    }
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle item selection
        switch (item.getItemId()) {
        case R.id.Menu:
            //newGame();
        case R.id.screenshot:
            ScreenshotCapture();
            return true;       
        case R.id.About:
            return true;
        default:
            return super.onOptionsItemSelected(item);
        }
    }
    public void ScreenshotCapture()
    {
        Bitmap bitmap;
        View rootView = findViewById(android.R.id.content).getRootView();
        rootView.setDrawingCacheEnabled(true);
        bitmap= rootView.getDrawingCache();
        File imagePath = new File(Environment.getExternalStorageDirectory().getPath() + "/screenshot.png");
        FileOutputStream fos=null;
        try {
            fos = new FileOutputStream(imagePath);
                        bitmap.compress(CompressFormat.JPEG, 90, fos);
            fos.flush();
            fos.close();
        } catch (FileNotFoundException e) {
            Log.e("GREC", e.getMessage(), e);
        } catch (IOException e) {
            Log.e("GREC", e.getMessage(), e);
        }
     
    }
}