2016-02-02 35 views
7

New -> Layout resource fileの代わりにNew -> Fileメニューを使用してスクリーンショットに偶然drawer_list_item.xmlを作成しましたが、デザインモードで通常のレイアウトファイルとして開くことができません。プレーンテキストファイルとして開きます。Android Studioがxmlファイルをレイアウトファイルとして認識しない

enter image description here

私はそのタイプを変更することができますどのような方法があります。私は、Android Studioの設定によってこれに関連する何かを見つけることができませんでした

ファイル内容:それはそれを作成するよう

  • 再作成は、動作しません。私が試した多くのもののため

    <?xml version="1.0" encoding="utf-8"?> 
        <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
           android:orientation="vertical" 
           android:layout_width="match_parent" 
           android:layout_height="match_parent"> 
    
           <TextView 
           android:layout_width="match_parent" 
           android:layout_height="match_parent" /> 
    
        </LinearLayout> 
    

    編集同じ方法。しかし、削除後に再作成すると、次の例外が発生します。私は、ウィンドウを閉じて、私はdrawer_item.xmlするファイルの名前を変更する場合は、古いテキストファイル

     null 
    java.lang.AssertionError 
    at org.jetbrains.android.util.AndroidResourceUtil.createFileResource(AndroidResourceUtil.java:1251) 
    at org.jetbrains.android.actions.CreateTypedResourceFileAction.doCreateAndNavigate(CreateTypedResourceFileAction.java:131) 
    at org.jetbrains.android.actions.CreateMultiRootResourceFileAction.create(CreateMultiRootResourceFileAction.java:108) 
    at org.jetbrains.android.actions.CreateResourceActionBase$MyInputValidator.create(CreateResourceActionBase.java:292) 
    at com.intellij.ide.actions.ElementCreator$1.run(ElementCreator.java:73) 
    at com.intellij.openapi.application.RunResult.run(RunResult.java:35) 
    at com.intellij.openapi.command.WriteCommandAction$2$1.run(WriteCommandAction.java:114) 
    at com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.java:1010) 
    at com.intellij.openapi.command.WriteCommandAction$2.run(WriteCommandAction.java:111) 
    at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:124) 
    at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:99) 
    at com.intellij.openapi.command.WriteCommandAction.performWriteCommandAction(WriteCommandAction.java:108) 
    at com.intellij.openapi.command.WriteCommandAction.execute(WriteCommandAction.java:80) 
    at com.intellij.ide.actions.ElementCreator.tryCreate(ElementCreator.java:92) 
    at org.jetbrains.android.actions.CreateResourceActionBase$MyInputValidator.canClose(CreateResourceActionBase.java:302) 
    at org.jetbrains.android.actions.CreateMultiRootResourceFileAction$MyDialog.doOKAction(CreateMultiRootResourceFileAction.java:174) 
    at com.intellij.openapi.ui.DialogWrapper$OkAction.doAction(DialogWrapper.java:1833) 
    at com.intellij.openapi.ui.DialogWrapper$DialogWrapperAction.actionPerformed(DialogWrapper.java:1799) 
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022) 
    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348) 
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402) 
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259) 
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252) 
    at java.awt.Component.processMouseEvent(Component.java:6535) 
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3324) 
    at java.awt.Component.processEvent(Component.java:6300) 
    at java.awt.Container.processEvent(Container.java:2236) 
    at java.awt.Component.dispatchEventImpl(Component.java:4891) 
    at java.awt.Container.dispatchEventImpl(Container.java:2294) 
    at java.awt.Component.dispatchEvent(Component.java:4713) 
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888) 
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4525) 
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466) 
    at java.awt.Container.dispatchEventImpl(Container.java:2280) 
    at java.awt.Window.dispatchEventImpl(Window.java:2750) 
    at java.awt.Component.dispatchEvent(Component.java:4713) 
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758) 
    at java.awt.EventQueue.access$500(EventQueue.java:97) 
    at java.awt.EventQueue$3.run(EventQueue.java:709) 
    at java.awt.EventQueue$3.run(EventQueue.java:703) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) 
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) 
    at java.awt.EventQueue$4.run(EventQueue.java:731) 
    at java.awt.EventQueue$4.run(EventQueue.java:729) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) 
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:728) 
    at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:866) 
    at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:650) 
    at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:381) 
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) 
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) 
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:109) 
    at java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:184) 
    at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:229) 
    at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:227) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:227) 
    at java.awt.Dialog.show(Dialog.java:1084) 
    at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl$MyDialog.show(DialogWrapperPeerImpl.java:792) 
    at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl.show(DialogWrapperPeerImpl.java:465) 
    at com.intellij.openapi.ui.DialogWrapper.invokeShow(DialogWrapper.java:1638) 
    at com.intellij.openapi.ui.DialogWrapper.show(DialogWrapper.java:1587) 
    at org.jetbrains.android.actions.CreateMultiRootResourceFileAction.invokeDialog(CreateMultiRootResourceFileAction.java:80) 
    at org.jetbrains.android.actions.CreateResourceActionBase.actionPerformed(CreateResourceActionBase.java:183) 
    at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAware(ActionUtil.java:182) 
    at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter$1.run(ActionMenuItem.java:311) 
    at com.intellij.openapi.wm.impl.FocusManagerImpl.runOnOwnContext(FocusManagerImpl.java:958) 
    at com.intellij.openapi.wm.impl.IdeFocusManagerImpl.runOnOwnContext(IdeFocusManagerImpl.java:124) 
    at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.actionPerformed(ActionMenuItem.java:281) 
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022) 
    at com.intellij.openapi.actionSystem.impl.ActionMenuItem.fireActionPerformed(ActionMenuItem.java:109) 
    at com.intellij.ui.plaf.beg.BegMenuItemUI.doClick(BegMenuItemUI.java:513) 
    at com.intellij.ui.plaf.beg.BegMenuItemUI.access$300(BegMenuItemUI.java:45) 
    at com.intellij.ui.plaf.beg.BegMenuItemUI$MyMouseInputHandler.mouseReleased(BegMenuItemUI.java:533) 
    at java.awt.Component.processMouseEvent(Component.java:6535) 
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3324) 
    at java.awt.Component.processEvent(Component.java:6300) 
    at java.awt.Container.processEvent(Container.java:2236) 
    at java.awt.Component.dispatchEventImpl(Component.java:4891) 
    at java.awt.Container.dispatchEventImpl(Container.java:2294) 
    at java.awt.Component.dispatchEvent(Component.java:4713) 
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888) 
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4525) 
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466) 
    at java.awt.Container.dispatchEventImpl(Container.java:2280) 
    at java.awt.Window.dispatchEventImpl(Window.java:2750) 
    at java.awt.Component.dispatchEvent(Component.java:4713) 
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758) 
    at java.awt.EventQueue.access$500(EventQueue.java:97) 
    at java.awt.EventQueue$3.run(EventQueue.java:709) 
    at java.awt.EventQueue$3.run(EventQueue.java:703) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) 
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) 
    at java.awt.EventQueue$4.run(EventQueue.java:731) 
    at java.awt.EventQueue$4.run(EventQueue.java:729) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) 
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:728) 
    at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:866) 
    at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:650) 
    at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:381) 
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) 
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) 
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) 
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) 
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) 
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:82) 
    
  • 再表示され、アイコンを取得して、レイアウトファイルとして見られています。 drawer_list_item.xmlに名前を戻すと、問題が返されます。まだ運 - だから、それはおそらく、プレーンテキストファイルとしてどこかにそれをインデックス化...

  • 無効化キャッシュ/再起動は問題.idea/workspace.xml.bkから.idea/workspakce.xmlの名前を変更しようとしました
  • が修正されないので、それは私が何かを逃した場合には、それを再作成します。私も.ideaフォルダとルートフォルダからapp.imlファイルが、問題のソースが見つかりません修正
+0

はなぜ、削除して作り直すことを –

+0

私がいることを試してみましたが、それは同じよう –

+1

でそれを作成しないで、あなたは '新を行いました削除 - >レイアウトリソースを2回file'? –

答えて

6

を削除しようとした - それは、Android Studioがあなたのホームディレクトリに作成し、設定ファイルにあった:~/.AndroidStudioPreview2.0。私の場合、それは~/.AndroidStudioPreview2.0/config/options/filetypes.xml

<application> 
     <component name="FileTypeManager" version="16"> 
     <ignoreFiles list="*.hprof;*.pyc;*.pyo;*.rbc;*~;.DS_Store;.git;.hg;.svn;CVS;RCS;SCCS;__pycache__;_svn;rcs;" /> 
     <extensionMap> 
      <mapping pattern="drawer_list_item.xml" type="PLAIN_TEXT" /> 
     </extensionMap> 
     </component> 
    </application> 

だったので、それはプレーンテキストとして名パターンdrawer_list_item.xmlファイルI何とか作られたアンドロイドスタジオインデックスのように思える...ファイルから 削除することマッピングエントリは、問題を解決します:<mapping pattern="drawer_list_item.xml" type="PLAIN_TEXT" />

+1

私のコンピュータでは、 'filetypes.xml'の場所は'〜/ Library/Preferences/AndroidStudioX.X/options/filetypes.xml'です。 –

2

は、私は単純にプロジェクトビューでファイルを右クリックする必要がありましたし、Androidのスタジオ2.2.xの中で「XMLとしてマーク」を選択

enter image description here

+0

悲しいことに、私はその場所に「Mark as XML」はありません。 – hqzxzwb

+1

ありがとう、それは私のために働いた! – Badr

0

Preferences -> File TypesRegistered PatternAndroid Studio Preferences

関連する問題