Theseus 模组文档
API 参考 / 能力接口(capability 包)

StatusItemHandle


状态栏自定义块句柄,由 UiCustomization.addStatusBarItem 返回。任意线程可调用;块被移除(或重新注册生成新块)后,旧句柄上的其余方法均为无操作。

方法速览

方法用途
setText(String)更新块显示文本
setOnClick(Runnable)设置点击回调
remove()移除该块

完整签名

java
public interface UiCustomization {

    interface StatusItemHandle {

        void setText(String text);

        void setOnClick(Runnable onClick);

        void remove();
    }
}

setText(String text)

签名:

java
void setText(String text);

行为:更新块显示文本,下次渲染帧生效;null 按空串处理。句柄对应的块已被移除时无操作。

示例:

java
item.setText("在线:3");

setOnClick(Runnable onClick)

签名:

java
void setOnClick(Runnable onClick);

行为:设置玩家点击块时触发的回调,游戏线程执行,可直接调用场景跳转等要求游戏线程的 API。传 null 表示无回调(纯展示块)。块被移除后调用无操作。

示例:

java
item.setOnClick(() -> {
    SceneHost host = ctx.capabilities().get(SceneHost.class);
    if (host != null) {
        host.push(new MyScene());
    }
});

remove()

签名:

java
void remove();

行为:移除该块,下次渲染帧消失;幂等。宿主在模组停用时也会自动调用。

示例:

java
item.remove();

线程:任意线程可调用。

稳定性:2.0 起冻结:2.x 内只增不破。