无法在Android中解析setContentView

时间:2014-02-04 20:41:03

标签: java android android-studio

我知道这是一个已知问题,但我的ide(android工作室)说setContentView无法解决。事实上,它工作得很好,但我试图导入一些Android插件,但后来我删除了我添加的所有插件文件。然后我注意到setContentView不再被识别了。

我尝试了SO上发现的所有内容(清理,重建......)。我看到它主要与xml view文件有关,但我在这些文件中没有错误。我能怎么做 ?

更新:

运行gradle build时,我获得了一些成功的构建。然后当我想运行项目时,我进入我的控制台

org.gradle.execution.TaskSelectionException: Task 'compileDebug' is ambiguous in root project 'NewsFeeder'. Candidates are: 'compileDebugAidl', 'compileDebugJava', 'compileDebugNdk', 'compileDebugRenderscript', 'compileDebugTestAidl', 'compileDebugTestJava', 'compileDebugTestNdk', 'compileDebugTestRenderscript

编辑2:这是我的布局

<android.support.v4.widget.DrawerLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/drawer_layout"
    android:layout_width="400px"
    android:layout_height="800px">

    <FrameLayout
        android:id="@+id/content_frame"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />


    <ListView
        android:id="@+id/left_drawer"
        android:layout_width="280dp"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        android:choiceMode="singleChoice"
        android:background="@color/white"
        android:headerDividersEnabled="false"
        />
    <ListView
        android:id="@+id/right_drawer"
        android:layout_width="280dp"
        android:layout_height="match_parent"
        android:layout_gravity="end"
        android:choiceMode="singleChoice"
        android:background="@color/white"
        android:headerDividersEnabled="false"

        />
</android.support.v4.widget.DrawerLayout>

编辑3:我重新启动ide,现在我进入了activity_main文件

Failed to find style 'listViewStyle' in current theme (8 similar errors not shown) "?android:attr/listPreferredItemHeight" in attribute "minHeight" is not a valid format. (Edit) (3 similar errors not shown)

2 个答案:

答案 0 :(得分:0)

试试这个, 确保setContentView在onCreate方法中,并且所有其他所需的代码片段都在方法中。这是一个帮助你的基本模板

package com.example.app
import android.app.Activity;
public class MainActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
}

答案 1 :(得分:0)

如上所述,您已删除所有插件,请确保某些必需的插件仍然存在。

您可以从Settings > Plugins

查看这些内容

enter image description here

似乎缺少android插件默认任务,所以请确保你有

apply plugin: 'android'

在模块的build.gradle文件中。

编辑(根据评论中的讨论):

您的项目中似乎正在使用actionbarsherlock,请确保您已在AndroidManifest.xml文件中应用了Sherlock主题

像这样:

如果您正在使用style.xml

style.xml

 <style name="AppBaseTheme" parent="Theme.Sherlock.Light.DarkActionBar">
    <!--
        Theme customizations available in newer API levels can go in
        res/values-vXX/styles.xml, while customizations related to
        backward-compatibility can go here.
    -->
 </style>

  <style name="AppTheme" parent="AppBaseTheme">

  //other style elements here or leave it blank

  </style>
AndroidManifest.xml 文件

中的

  <application
    android:allowBackup="true"
    android:icon="@drawable/logo"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >

   </application>