Eclipse,在图像视图上的视图中布局

Posted

技术标签:

【中文标题】Eclipse,在图像视图上的视图中布局【英文标题】:Eclipse, layout in a view on an image view 【发布时间】:2013-12-26 03:44:47 【问题描述】:

所以我有这门课叫书。这本书既是一个java类又是一个布局的xml文件。然后我有一个名为 book_shelf 的类/xml 文件。在我的 book_shelf xml 文件中,我有一个名为 book1 的视图。

public class book_shelf extends Activity 
@Override
    public boolean onCreateOptionsMenu(Menu menu) 
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.mainmenu, menu);

        book MyBook = new book();
        final View book1 = (View) findViewById(R.id.book1);
        book1.(load my book xml layout in this view)
        return true;

    


我想将书籍布局加载到我的书架框架的视图中。请和谢谢。

【问题讨论】:

book1.addView(MyBook); 【参考方案1】:

您需要使用 inflator 为所需的布局充气,然后在视图中添加布局。 例如

book MyBook = new book();
final View book1 = (View) findViewById(R.id.book1);

LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);

//assuming R.layout.book your book xml
View bookView = inflater.inflate(R.layout.book, null);

//Add bookView layout to your book1.
book1.addView(bookView)

编辑: 试试这个

final View book1 = (View) findViewById(R.id.book1);
((ViewGroup) book1).addView(bookView, 0, new ViewGroup.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT));

【讨论】:

非常感谢,但是 book1.addView(bookView) 给出了错误。我注意到 addView 仅适用于 ViewGroup 。我尝试将 book1 转换为 ViewGroup,但这不起作用。 ((ViewGroup) book1).addView(bookView); 检查已编辑:部分。 一个崩溃以及同样的错误,视图不能被投射到视图组。也许我正在解决这个错误。是否有一个元素“ViewGroup”,而不是“View”,我可以添加多个视图?例如,我的 bookShelf 将是 ViewGroup 类型,其中包含许多 Views 书? 好的,我明白了。问题是我无法将其添加到需要将其添加到布局的视图中,在我的情况下为 FrameLayout。 final FrameLayout book1 = (FrameLayout) findViewById(R.id.book1);但它不会将书缩小到 FrameLayout 大小。

以上是关于Eclipse,在图像视图上的视图中布局的主要内容,如果未能解决你的问题,请参考以下文章

在 Eclipse 的 JUnit 视图中排序单元测试

UIImageview 在自动布局上调整大小

Xcode 6:按钮在所有设备上的图像视图中都停留在特定位置吗?约束?

自动布局和图像视图/视图

为啥在eclipes为创建一个android布局文件在R中没有自动生成

集合视图。屏幕上的 const 图像数量。 Xamarin 表单