На нестатический метод getCurrentStyle() нельзя ссылаться из статического контекста (но метод нестатический :()JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 На нестатический метод getCurrentStyle() нельзя ссылаться из статического контекста (но метод нестатический :()

Сообщение Anonymous »


У меня есть класс менеджера стилей, и я использую его в другом файле, но когда я использую этот метод, он показывает ошибку На нестатический метод getCurrentStyle() нельзя ссылаться из статического контекста >, но в самом StyleManager все переменные не статичны (ошибка при вызове StyleManager.getCurrentStyle())

Менеджер стилей:

публичный класс StyleManager { стили public List = new ArrayList(); частный стиль currentStyle = null; общественная недействительная инициализация () { Styles.addAll(Arrays.asList( новый стиль("Манго", HexColor.toColor("#FCFC36"), HexColor.toColor("#5D00B2")), новый стиль("Фиолетовый", HexColor.toColor("#F4ECFF"), HexColor.toColor("#765AA5")), new Style("Разно цветный", HexColor.toColor("#000000"), HexColor.toColor("#FFFFFF")), new Style("Варм", HexColor.toColor("#FFC854"), HexColor.toColor("#4288FF")), новый стиль("Феникс", HexColor.toColor("#FFC300"), HexColor.toColor("#FF5800")), new Style("Конфетный", HexColor.toColor("#76ACD7"), HexColor.toColor("#F15FE9")), new Style("Кровавый", HexColor.toColor("#FD3A3A"), HexColor.toColor("#3A3A3A")), новый стиль("Полиция", HexColor.toColor("#FF6347"), HexColor.toColor("#0044FF")), новый стиль("Щилд", HexColor.toColor("#373b44"), HexColor.toColor("#4286f4")), новый стиль("Свой", HexColor.toColor("#765AA5"), HexColor.toColor("#F4ECFF")) ) ); currentStyle =styles.get(0); } public static Color astolfo(float yDist, float yTotal, float saturation, float Speedt) { плавающая скорость = 1800 футов; float hue = (System.currentTimeMillis() % (int) скорость) + (yTotal - yDist) * Speedt; while (оттенок > скорость) { оттенок = скорость; } оттенок / = скорость; если (оттенок > 0,5) { оттенок = 0,5F – (оттенок – 0,5f); } оттенок += 0,5F; return Color.getHSBColor(оттенок, насыщенность, 1F); } public void setCurrentStyle (стиль стиля) { текущийСтиль = стиль; } публичный стиль getCurrentStyle() { вернуть текущий стиль; } публичный статический класс HexColor { public static int toColor(String hexColor) { int argb = Integer.parseInt(hexColor.substring(1), 16); вернуть reAlphaInt(argb, 255); } public static int reAlphaInt(конечный цвет int, окончательный int альфа) { return (MathHelper.clamp(alpha, 0, 255) 14? -14 + fontSize.getValue().intValue() - (fontSize.getValue().intValue() > 14? 1: 0): 0); интервал первого цвета; интервал второго цвета; если (светится) { for (Функциональная функция: sortedFunctions) { // if ((limitations.get(0) && function.category == Type.Render) || (limitations.get(1) && function.bind == 0)) { // продолжать; // } function.animation = AnimationMath.lerp(function.animation, function.state ? 1: 0, 15); если (function.animation >= 0,01) { ширина плавающей точки = font.getWidth(function.name) + 5; firstColor = StyleManager.getCurrentStyle() .getColor((int) ((yOffset + height * function.animation) *gradientForce)); второй цвет = styleManager.getCurrentStyle() .getColor((int) (yOffset *gradientForce)); RenderSystem.pushMatrix(); RenderSystem.translatef(x + ширина / 2F, y + yOffset, 0); RenderSystem.scalef(1, function.animation, 1); RenderSystem.translatef(-(x + ширина / 2F), -(y + yOffset), 0); RenderUtil.Render2D.drawShadow(x, y + yOffset, ширина, высота, 10, firstColor, SecondColor); RenderSystem.popMatrix(); yOffset += высота * function.animation; } } уСмещение = 0; } for (Функциональная функция: sortedFunctions) { // if ((limitations.get(0) && function.category == Type.Render) || (limitations.get(1) && function.bind == 0)) { // продолжать; // } function.animation = AnimationMath.lerp(function.animation, function.state ? 1: 0, 15); если (function.animation >= 0,01) { ширина плавающей точки = font.getWidth(function.name) + 5; второй цвет = styleManager.getCurrentStyle() .getColor((int) (yOffset *gradientForce)); RenderSystem.pushMatrix(); RenderSystem.translatef(x + ширина / 2F, y + yOffset, 0); RenderSystem.scalef(1, function.animation, 1); RenderSystem.translatef(-(x + ширина / 2F), -(y + yOffset), 0); RenderUtil.Render2D.drawRect(x, y + yOffset, ширина, высота, ColorUtil.rgba(21, 21, 21, 255)); font.drawString(matrixStack, function.name, x + 3, y + yOffset + Font.getFontHeight()/2f — FontOffset — 1, SecondColor); RenderSystem.popMatrix(); yOffset += высота * function.animation; } } уСмещение = 0; for (Функциональная функция: sortedFunctions) { // if ((limitations.get(0) && function.category == Type.Render) || (limitations.get(1) && function.bind == 0)) { // продолжать; // } function.animation = AnimationMath.lerp(function.animation, function.state ? 1: 0, 15); если (function.animation >= 0,01) { ширина плавающей точки = font.getWidth(function.name) + 4; firstColor = StyleManager.getCurrentStyle().getColor((int) ((yOffset + height * function.animation) *gradientForce)); SecondColor = styleManager.getCurrentStyle().getColor((int) (yOffset *gradientForce)); RenderSystem.pushMatrix(); RenderSystem.translatef(x + ширина / 2F, y + yOffset, 0); RenderSystem.scalef(1, function.animation, 1); RenderSystem.translatef(-(x + ширина / 2F), -(y + yOffset), 0); RenderUtil.Render2D.drawShadow(x, y + yOffset, 1, высота, 8, firstColor, SecondColor); RenderUtil.Render2D.drawVertical(x, y + yOffset, 1, высота, firstColor, SecondColor); RenderSystem.popMatrix(); yOffset += высота * function.animation; } } } мне ни один метод не помог (я новичок)
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»