MCBBS Wiki欢迎您共同参与编辑!在参与编辑之前请先阅读Wiki方针

如果在编辑的过程中遇到了什么问题,可以去讨论板提问。

为了您能够无阻碍地参与编辑 未验证/绑定过邮箱的用户,请尽快绑定/验证

MCBBS Wiki GitHub群组已上线!

您可以在回声洞中发表吐槽!

服务器状态监控。点击进入

本站由MCBBS用户自行搭建,与MCBBS及东银河系漫游指南(北京)科技有限公司没有从属关系。点此了解 MCBBS Wiki 不是什么>>

FancyMenu Wiki/自定义Visibility Requirements:修订间差异

跳到导航 跳到搜索
(创建页面,内容为“== 关于 == 通过在拓展模组中调用 FancyMenu API,即可自定义Visibility Requirements用于布局中的元素。 重要:Visibility RequirementsAPI只在FancyMenu v2.6.3+有效。 == 准备开发环境 == 请参阅 准备工作区。 == 添加Visibility Requirements == Visibility Requirements使用<code>VisibilityRequirement</code>类。 你需要为每一个VisibilityRequirement Requirements 创建一个子…”)
 
=== 不同类型的Requirements ===
VisibilityRequirements可以用于两种不同的模式。
 
第一种是不使用任何值来检查是否满足 Requirements ,第二种是使用一个值。
 
如果 Requirements 使用值,那么用户在给一个元素设置 Requirements 时就需要输入这个值。
=== 不使用值来创建 Requirements ===
创建一个<code>VisibilityRequirement</code>的新子类并取一个合适的名字。
 
接下来我会将我的示例类命名为<code>ExampleVisibilityRequirement</code>
 
同时有一些特殊的点需要特别留意一下。
==== 构造方法(Constructor) ====
在构造方法中给你的 Requirements 定义唯一标识符。
<syntaxhighlight lang="java">
public ExampleVisibilityRequirement() {
//The identifier needs to be unique! It's not possible to register multiple requirements with the same identifier!
super("example_requirement_no_value");
}
</syntaxhighlight>
复制代码
==== hasValue() ====
 
hasValue()
这个方法用于返回 Requirements 是否需要值。
 
因为我们不想给这个 Requirements 使用值,所以返回<code>false</code>
<syntaxhighlight lang="java">
@Override
public boolean hasValue() {
return false;
}
</syntaxhighlight>
复制代码
 
isRequirementMet()
这是你的 Requirements 的最重要的方法。