【问题标题】:Cannot edit main.xml in Eclipse Android project无法在 Eclipse Android 项目中编辑 main.xml
【发布时间】:2013-09-09 03:48:47
【问题描述】:

我已经在 Eclipse 中使用 ADT 创建了几个 Android 应用程序,但我现在无法在新的或旧的 Android 项目中编辑 res/layout/main.xml。当我在 main.xml 选项卡中键入时,我的击键无效。同样,我无法在“图形布局”选项卡中进行更改。我可以将一个小部件拖到屏幕上,但是当我放开鼠标按钮时它不会保留。我已经通过 Eclipse 和文件系统检查了 main.xml 没有写保护。我可以通过 Eclipse 或文件系统在该目录中创建另一个文件,这表明该目录没有写保护。我在“src”目录下编辑或添加文件没有问题。

我在 Windows 7 上运行 Eclipse Classic 3.6.1 和版本 10.0.1.v201103111512-110841 的 Android 开发工具。FWIW,我最近安装了一些其他 Google 工具(GWT 和 GAE)的插件,虽然我没有将它们用于任何 Android 项目(显然)。

更新:当我在其他编辑器中编辑 xml,然后在 Eclipse 中刷新它时,我收到错误“解析 XML 时出错:未绑定前缀”。我的文件是正确的,但我发现标准 URL“http://schemas.android.com/apk/res/android”无法访问。具体来说,服务器已关闭。我不知道这是否与我原来的问题有关。

Update2:这是我在 Eclipse 之外创建的 foo.xml,但在第二行显示错误 Error parsing XML: unbound prefix

<?xml version="1.0" encoding="utf-8"?>
    <TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:text="TextView" 
android:id="@+id/textView1" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" />

网站schemas.android.com 仍然关闭。

我尝试运行我的程序以获取编译器错误,但它构建正确,并且错误从 .xml 文件中消失了。去图吧。

这仍然留下了无法在 Eclipse 中编辑 任何 .xml 文件的原始问题。当我尝试编辑上述 xml 文件时,我在弹出窗口中收到此错误:

No grammar constraints (DTD or XML schema) detected for the document.

我猜这是因为schemas.android.com 宕机了。

更新 3(针对 slund 的评论):

清理和重建并没有改变任何东西。我可以构建,但是当我尝试编辑任一 .xml 文件时仍然出现“无语法约束”错误。

xml文件的目录是C:\Users\Ellen\workspace\SqliteDemo\res\layout,应该是这样。它不包含其他文件。问题视图没有显示此项目的警告或问题(尽管我的其他项目有一些警告或问题)。

更新 4

我也无法在 Eclipse 中编辑(默认)AndroidManifest.xml。

【问题讨论】:

  • 复制并粘贴您的 main.xml 文件
  • 只有 main.xml 有问题,其他 xml 文件没有问题。你能告诉我们日志、问题、控制台和 main.xml。
  • 你试过清理项目了吗?这个 xml 文件在什么目录,具体是在 res/layout 中吗?窗口|显示视图|问题视图中是否显示任何其他信息?布局目录中是否有任何非xml文件(如foo.xml.out?)
  • @slund,我不知道如何进入问题视图。谢谢。我已经更新了问题描述。

标签: android xml eclipse adt


【解决方案1】:

在遵循 Android 资源网站上的初学者教程后,我遇到了同样的问题 - 只需在标记 (http://developer.android.com/resources/tutorials/views/index.html) 中创建一个布局并删除文本视图元素。

现在切换回图形布局模式,一切正常!

【讨论】:

  • 问题是 Eclipse 不允许我在标记中创建布局。在带有 main.xml 文本视图的缓冲区中,所有按键都被忽略。除了键入文本之外,您是否提出了其他创建布局的方法?谢谢。
【解决方案2】:

我遇到了类似的问题(在 Windows 7 中)。关闭索引和防病毒解决了我的问题。

【讨论】:

    【解决方案3】:

    我最近遇到了这个问题。由于这里没有公认的答案,我来猜测一下。

    我认为这与xml中指定的版本有关。我不完全确定您的情况,但是,也许您可​​以验证我的说法。 eclipse 主要版本是否与您的 xml 文件中指定的匹配?

    例如,在 Eclipse Kepler (4.3) 中打开以下内容:

    <?xml version="1.0" encoding="UTF-8"?>
    <?eclipse version="3.0"?>
    <plugin
       id="com.someplace.something"
    ...
    

    我也无法编辑它。但是,在 Eclipse Indigo (3.7) 中打开相同的 plugin.xml 似乎允许我很好地编辑该文件。所以,Eclipse 主版本必须匹配。

    我没有深入研究以在 Eclipse 文档中验证这一点。所以,在这一点上,我只是将其称为根本原因的预感。

    对于遇到此问题的任何人,如果您真的坚持在 Eclipse 中编辑 xml 文件,那么您可能需要在 xml.xml 中指定正确的主要版本。不幸的是,保留旧版本的 Eclipse 并不是最理想的解决方案! ;-)

    【讨论】:

    • 我想在你的情况下,可能是android版本不匹配导致文件为只读。
    猜你喜欢
    • 2012-07-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多