【发布时间】:2013-03-01 08:58:58
【问题描述】:
我想编写一个像手电筒这样的应用程序(借助摄像头 LED)。
Player player = javax.microedition.media.Manager.createPlayer("capture://video?encoding=video/3gpp");
player.realize();
VideoControl videoControl = (VideoControl) player.getControl("VideoControl");
if(videoControl != null)
{
videoField = (Field)videoControl.initDisplayMode( VideoControl.USE_GUI_PRIMITIVE, "net.rim.device.api.ui.Field" );
try
{
videoControl.setDisplaySize(1, 1);
}
catch(Exception e)
{
PGLogUtil.logString(e.toString());
}
videoControl.setVisible(true);
add(videoField);
FlashControl flashControl = (FlashControl)
player.getControl("javax.microedition.amms.control.camera.FlashControl");
setFlashlight(true);
}
player.start();
上面的代码完美运行,但我想隐藏videoField。当我删除add(videoField) 或使用videoControl.setVisible(false) 时,手电筒不起作用。谁能解释一下原因?
如何使用隐藏的videoField 打开灯?
【问题讨论】:
-
您必须支持的最低操作系统是多少?
-
也许尝试将另一个屏幕推到前台,或者当您扩展 MainScreen 覆盖绘制并且不在那里执行任何操作时。
-
嗨,CAMOBAP,您得到解决方案了吗?我在这里也面临同样的问题。你能帮忙吗?
-
我仍然没有适用于所有设备的解决方案。对于某些设备线
videoControl.setDisplaySize(1, 1)正常工作并且相机Field成功隐藏
标签: blackberry java-me camera flashlight