【问题标题】:How do I programmatically add multiple ImageViews to a Framelayout?如何以编程方式将多个 ImageView 添加到 Framelayout?
【发布时间】:2013-07-27 16:34:41
【问题描述】:

我正在创建一个使用自定义相机的应用。我的想法是我只是在我的 xml 文件中定义一个 Framelayout,然后他们以编程方式添加 SurfaceView(这是相机预览)和其他一些 ImageView(例如快门按钮、闪光灯按钮......)

我设法让 SurfaceView 工作,但现在我有点卡住了。我想将多个图像视图添加到框架布局中,但是如何正确设置它们。我指的是它们在框架布局中的位置。 我可以创建一个相对布局并以编程方式将其添加到我的框架布局中吗?如果是这样,我该怎么做?

拜托,谁能给我一些建议? 谢谢!

【问题讨论】:

    标签: java android android-relativelayout surfaceview android-framelayout


    【解决方案1】:

    FrameLayou 只能有一个直接子级。你可以试试这个

        SurfaceView surface = .....;
        FrameLayout frame = findViewById(R.id.frame);
        RelativeLayout relativeLayout = new RelativeLayout(this);
        frame.addView(relativeLayout, new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));
        relativeLayout.addView(surface, new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));
    
        // here you should add your images to relativeLayout
    

    【讨论】:

    • 太棒了!你能加强你的答案并添加一个示例图像视图吗?看看我如何在相对视图中定义它的位置会很有趣。
    猜你喜欢
    • 2019-08-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多