2016-02-19 72 views
1

当我在设备上运行应用程序时,控制台中无任何错误,并且没有显示背景。但是,如果我打开JSON,它几乎全是红色的。什么可能是错误的?Android Studio无法读取json文件

{ 
com.badlogic.gdx.graphics.Color: { 
    white: { r: 1, g: 1, b: 1, a: 1 }, 
    black: { r: 0, g: 0, b: 0, a: 1 }, 
    gray: { r: 0.3, g: 0.3, b: 0.3, a: 1 }, 
    red: { r: 1, g: 0, b: 0, a: 1 }, 
    green: { r: 0, g: 1, b: 0, a: 1 }, 
    blue: { r: 0, g: 0, b: 1, a: 1 } 
}, 
com.badlogic.gdx.graphics.g2d.BitmapFont: { 
    white64: { file: font/white64.fnt }, 
    black64: { file: font/black64.fnt }, 
    white32: { file: font/white32.fnt }, 
    black32: { file: font/black32.fnt }, 
    white16: { file: font/white16.fnt }, 
    black16: { file: font/black16.fnt } 
}, 
com.badlogic.gdx.scenes.scene2d.ui.Label$LabelStyle: { 
    default: { font: white32, fontColor: white }, 
    big:  { font: white64, fontColor: white }, 
    small: { font: white16, fontColor: white } 
}, 
com.badlogic.gdx.scenes.scene2d.ui.TextButton$TextButtonStyle: { 
    default: { up: button.up, down: button.down, font: black32, pressedOffsetX: 1, pressedOffsetY: -1 }, 
    big:  { up: button.up, down: button.down, font: black64, pressedOffsetX: 1, pressedOffsetY: -1 }, 
    small: { up: button.up, down: button.down, font: black16, pressedOffsetX: 1, pressedOffsetY: -1 } 
}, 
com.badlogic.gdx.scenes.scene2d.ui.List$ListStyle: { 
    default: { font: white32, fontColorUnselected: white, fontColorSelected: black, selection: default.selection } 
}, 
com.badlogic.gdx.scenes.scene2d.ui.ScrollPane$ScrollPaneStyle: { 
    default: { hScrollKnob: button.up, vScrollKnob: button.up } 
}, 
com.badlogic.gdx.scenes.scene2d.ui.CheckBox$CheckBoxStyle: { 
    default: { font: white32, checkboxOn: checkbox.on, checkboxOff: checkbox.off, checkboxOver: checkbox.over } 
}, 
com.badlogic.gdx.scenes.scene2d.ui.TextField$TextFieldStyle: { 
    default: { font: black32, fontColor: black, messageFontColor: gray, background: default.background, cursor: default.selection } 
} 
} 

这是我如何调用JSON文件:

skin = new Skin(Gdx.files.internal("ui/menuSkin.json"), new TextureAtlas("ui/atlas.pack")); 

什么Android Studio中说,当我将鼠标悬停我的鼠标移到错误:

JSON standard does not allow identifiers 
This inspection checks that JSON files conform to language specification (RFC-7159) 
+0

也有这个,学会了使用它。您可以在设置 - >编辑 - >检查中关闭Json检查功能,但可以将'.'。而其他一些特殊字符仍会被标记。 – Madmenyo

回答

0

由于RFC-7159章没有。 7个字符串

串的表示类似于在C 家族的编程语言的使用的约定。 一个字符串以 (引号)开头和结尾。

这就是为什么Android Studio没有验证这个.json。事实上,它应该起作用,因为即使官方的例子不尊重这一要求 - take a look here


我也不确定使用点''in json entries'es values - 例如:checkboxOff: checkbox.off, checkboxOver: checkbox.over。我不知道这是否会导致错误,但对我来说,这似乎不是好习惯。

在这种情况下,我曾用下划线'_'的符号。