2013-06-13 49 views
1

我有一个覆盖onKeyDown的应用程序。 这是方法:在应用程序内获取屏幕截图

@Override 
public boolean onKeyDown(int keyCode, KeyEvent event) { 
    if (keyCode == KeyEvent.KEYCODE_BACK) { 
     // my stuff  
     } 
} 

现在,如果我试图采取截图在我的应用程序中,长按需要采取的截图按钮,似乎并没有工作。 有没有没有这么痛苦的方式能够再次截图?

P.S.对不起,我的英语

+0

你想做什么?没有得到你的问题。 – Riser

+0

重写onBackPress insteand onKeyDown。你的问题是什么? – Blackbelt

+0

你的意思是你必须长按回退按钮才能截图? – Bishan

回答

1
@Override 
    public boolean onKeyDown(int keyCode, KeyEvent event) { 
    if(keyCode == KeyEvent.KEYCODE_BACK) { 
     event.startTracking(); 
     return true; 
    } 
    return super.onKeyDown(keyCode, event); 
    } 

    @Override 
    public boolean onKeyUp(int keyCode, KeyEvent event) { 
    if(keyCode == KeyEvent.KEYCODE_BACK) { 
     //Your stuff. (Handle what you want on short press).  
     return true; 
    } 

    return super.onKeyUp(keyCode, event); 
    } 

    @Override 
    public boolean onKeyLongPress(int keyCode, KeyEvent event) { 
    if(keyCode == KeyEvent.KEYCODE_BACK) { 
     //Handle what you want in long press. 
     return true; 
    } 
    return super.onKeyLongPress(keyCode, event); 
    } 
+0

谢谢!这工作。 – JJonDuty

0

试试这个

Layout.setDrawingCacheEnabled(true); //Root layout of your APP 
Bitmap bmp=Layout.getDrawingCache(); //Screen shot bitmap 
0

使用Eclipse的DDMS视图采取截图在这个case.This很容易。

+0

我会的,但我的客户不能这样做:P – JJonDuty

+0

是的,我以为你想要一个截图:) – Nargis

相关问题