簡體   English   中英

如何在libGDX Java中檢測對精靈或紋理的觸摸?

[英]How to detect touch on sprite or texture in libGDX java?

我有一個主頁按鈕圖標,它只是一個帶有圖像的普通精靈。 我想通過觸摸此按鈕執行一些操作。 如何將觸摸偵聽器添加到此按鈕,或者還有其他更簡單的方法嗎?

一種方法是使用按鈕的按鈕邊界設置一個Rectangle

Rectangle buttonBounds = new Rectangle(buttonX, buttonY, buttonWidth, buttonHeight);

如果然后要檢查用戶是否觸摸過按鈕,請在render()方法中輸入:

if(Gdx.input.justTouched()){
    Vector2 touch = viewport.unproject(new Vector2(Gdx.input.getX(), Gdx.input.getY()));

    //Check if button if touched
    if(buttonBounds.contains(touch)){
        System.out.println("Button touched!");
        //Do something
    }
}

如果不使用Viewport ,則可以將viewport.unproject()更改為cam.unproject() ,其中cam是您的Camera

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM