【问题标题】:Text layered over image libgdx在图像 libgdx 上分层的文本
【发布时间】:2015-11-01 11:23:17
【问题描述】:

所以到目前为止,在我的游戏中,我在滚动窗格中显示不同的图像。现在在这些图像上,我想显示动态文本,这些文本将与滚动窗格一起滚动,同时保持在图像上的同一位置。我一直在环顾四周,看到了不同的方法,但我不确定哪种方法最好。 我见过的方法是:
使用堆栈将文本分层到图像顶部。
使用帧缓冲区。 感谢您的帮助。

【问题讨论】:

    标签: java libgdx


    【解决方案1】:

    虽然我从未使用过Stack,但我认为它可以解决您的问题。

    堆栈允许您将多个演员放在一起。所以策略是创建几个堆栈。每个堆栈会包含一个图像,以及图像顶部的相应文本,然后将堆栈添加到 ScrollPane;

    Image image1, image2, ... imageN;
    Label label1, label2, ... labelN;
    Stack stack1, stack2, ... stackN;
    ScrollPane scrollPane;
    Stage stage;
    
    public Screen(final MyGdxGame gam){
        /*
        * Define all your images, labels, the scrollPane and the stage
        */
    
        //Add images and labels to the corresponding stack
        stack1.add(image1);
        stack1.add(label1);
        .   
        .   
        .   
        stackN.add(imageN);
        stackN.add(labelN);
    
        //Add the stacks to the scrollPane
        scrollPane.addActor(stack1);
        .   
        .   
        .   
        scrollPane.addActor(stackN);
    
        stage.addActor(scrollPane);
    }
    

    【讨论】:

    • 谢谢。我最终使用了一个包含两个表的堆栈(一个用于图像,另一个用于覆盖信息)。但是,尝试将每个标签放置在正确的位置时遇到了问题。我有几条通过 JSON 数据的记录。对显示图像的每个记录进行 for 循环,然后在图像左上角顶部的 json 数据中添加标签。我为下面的每个图像匹配这些是设置图像单元格的宽度和高度,然后使用它们来设置信息表的宽度和高度。
    • 这是问题的解决方案,应该标记为答案。
    猜你喜欢
    • 2016-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-29
    • 2012-01-06
    相关资源
    最近更新 更多