1、執行介面
這是乙個不顯示滾動條的水平scrollpanel,通過手勢控制scrollpanel水平移動
2、示例**
import com.badlogic.gdx.graphics.color;
import com.badlogic.gdx.scenes.scene2d.actor;
import com.badlogic.gdx.scenes.scene2d.inputevent;
import com.badlogic.gdx.scenes.scene2d.inputlistener;
import com.badlogic.gdx.scenes.scene2d.touchable;
import com.badlogic.gdx.scenes.scene2d.ui.image;
import com.badlogic.gdx.scenes.scene2d.ui.imagebutton;
import com.badlogic.gdx.scenes.scene2d.ui.scrollpane;
import com.badlogic.gdx.scenes.scene2d.ui.skin;
import com.badlogic.gdx.scenes.scene2d.ui.table;
import com.badlogic.gdx.scenes.scene2d.utils.clicklistener;
import com.badlogic.gdx.scenes.scene2d.utils.textureregiondrawable;
import com.swallowgames.supermario.game.assets;
import com.swallowgames.supermario.screen.mainscreen;
import com.swallowgames.supermario.utils.utils;
public class themescrollpanel extends scrollpane
public themescrollpanel (actor widget, scrollpanestyle style)
public themescrollpanel init()
});setsmoothscrolling(true);
setflickscroll(false);
setsize(themebackground.getwidth()*2, table.getheight());
setposition(utils.xaxiscenter(getwidth()), utils.yaxiscenter(getheight()) - 20);
return this; }
public void setmainscreen(mainscreen mainscreen)
class buttonclicklistener extends clicklistener
}}
3、手勢監聽
import com.badlogic.gdx.input.gesturedetector.gestureadapter;
public class mainscreengesturelistener extends gestureadapterelse if(themescrollpanel != null && themescrollpanel.isvisible())else
} public void setlevelwindow(levelwindow levelwindow)
public void setthemescrollpanel(themescrollpanel themescrollpanel)
@override
public boolean panstop(float x, float y, int pointer, int button)
if(panx == x && pany ==y && pandeltax > 0f)
return true;
}else
}}
4、**說明
scrollpane裡面的內容是幾張,使用的是乙個table元件布局。
需要注意的幾句**:
//控制位水平滑動
setscrollingdisabled(false, true);
//需要加上,具體也不知道是幹叼的
addlistener(new inputlistener()
});//看方法名就知道是幹嘛的
setsmoothscrolling(true);
//不顯示自帶的滾動條
setflickscroll(false);
@override
public boolean pan(float x, float y, float deltax, float deltay) else if(themescrollpanel != null && themescrollpanel.isvisible())else
}這段**,其中themescrollpanel.setscrollx(themescrollpanel.getscrollx()-deltax);就是通過手勢來移動滾動元件,
deltax就是移動的速度。
libgdx遊戲引擎教程
第一講 libgdx 遊戲引擎教程 一 效能優良的遊戲引擎 libgdx 第二講 libgdx 遊戲引擎教程 二 著手第乙個程式 第三講 libgdx 遊戲引擎教程 三 libgdx 粒子系統的使用 外篇一 libgdx遊戲引擎教程外篇 一 優美的自定義進度條 附原始碼 第四講 libgdx遊戲引擎...
libgdx遊戲引擎教程
第一講 libgdx遊戲引擎教程 一 效能優良的遊戲引擎 libgdx 第二講 libgdx遊戲引擎教程 二 著手第乙個程式 第三講 libgdx遊戲引擎教程 三 libgdx粒子系統的使用 外篇一 libgdx遊戲引擎教程外篇 一 優美的自定義進度條 附原始碼 第四講 l ibgdx遊戲引擎教程 ...
libgdx遊戲引擎教程
第一講 libgdx遊戲引擎教程 一 效能優良的遊戲引擎 libgdx 第二講 libgdx遊戲引擎教程 二 著手第乙個程式 第三講 libgdx遊戲引擎教程 三 libgdx粒子系統的使用 外篇一 libgdx遊戲引擎教程外篇 一 優美的自定義進度條 附原始碼 第四講 l ibgdx遊戲引擎教程 ...