Android - Unity3D:setVisibility(View.VISIBLE)崩溃

时间:2012-09-28 12:46:13

标签: android unity3d

我有一个团结项目,我使用Android(java)插件来获取相机数据。我在TextureView上绘制它。 当我按下一个按钮时,我想隐藏/显示这个视图。 但是当我setVisibility

时我的应用程序崩溃了

的onCreate

UnityPlayer.currentActivity.addContentView(texView, new FrameLayout.LayoutParams(400, 400));

的java:

public void HideVideo()
{
    //Hide view
    _TextureView.setVisibility(View.INVISIBLE);
}

我需要拨打一个额外的功能吗,或者我可能只在某些时候拨打它?

这些都不起作用,它们都会让我的应用程序崩溃。

    _TextureView.setVisibility(View.INVISIBLE);
    _TextureView.setActivated(false);
    _TextureView.setAlpha(0);
    _TextureView.setTranslationY(-1000);

1 个答案:

答案 0 :(得分:0)

我做了一个解决方法,现在我设置了一个布尔值,并在onSurfaceTextureUpdated回调中设置了alpha。

public void onSurfaceTextureUpdated(SurfaceTexture surface)
{
    //Visibility changed
    if(_isVisibleChanged == true)
    {
        //Show video
        if(_isVisible)
            _TextureView.setAlpha(1);

        //Hide video
        else
            _TextureView.setAlpha(0);

        //Visibility updated
        _isVisibleChanged = false;
    }
}

但是仍然不明白为什么它不在这个功能里面时会崩溃。有没有人对此有答案?