【问题标题】:Android Child Activity Canvas Size Width LimitedAndroid子活动画布大小宽度限制
【发布时间】:2012-12-21 23:58:42
【问题描述】:

我编写了一个应用程序,其主要活动 GUI 由 XML 布局文件指定的相对布局内的多个按钮和文本视图组成。它占据了大约一半的景观宽度和三分之二的高度。

我希望调用具有全屏画布的子活动,该画布在被激活时会覆盖然后暂停的主活动 GUI。

我制作了一个单独的应用程序,它使用名为 DrawView 的 onDraw(Canvas) 类,当作为独立应用程序运行时,它提供了我想要的全屏画布。它由一个活动构成,其代码如下所示。

我遇到的问题是,当我将此代码合并到我的主包中并从主活动启动画布活动时,画布的窗口宽度根据 getWidth() 方法从 1280 像素减少到 696 像素。看来我的父主要活动限制了子活动窗口的大小。我不知道是什么导致了这种宽度减小,也不知道如何控制它。我尝试了很多选择都无济于事。如何防止这种宽度减小发生?它是由 Android 方案控制的吗?可以覆盖吗?

提前感谢您的帮助!

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // Set full screen view
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,  
                             WindowManager.LayoutParams.FLAG_FULLSCREEN);

        drawView = new DrawView(this);
        setContentView(drawView);
        drawView.requestFocus();
        drawView.setBackgroundColor(0xFFFFFFFF);            
    }

【问题讨论】:

  • 一张图片胜过千言万语。

标签: android android-activity resize width android-canvas


【解决方案1】:

我在这里回答我自己的问题,以防万一有其他人不熟悉我想常见的高级图形术语也会遇到同样的问题。

我需要做的就是删除此活动的清单文件“主题”行:

android:theme="@android:style/Theme.Holo.Dialog"

Dialog 主题将 Activity 窗口的大小限制为典型的用户输入对话框屏幕大小。

【讨论】:

    猜你喜欢
    • 2013-05-21
    • 1970-01-01
    • 2017-08-11
    • 1970-01-01
    • 1970-01-01
    • 2015-10-06
    • 1970-01-01
    • 2012-03-04
    • 1970-01-01
    相关资源
    最近更新 更多