supressLint无法解析为类型错误(android初学教程在线)

时间:2013-05-17 19:00:53

标签: android lint

在以下代码中,我在http://developer.android.com/training/basics/firstapp/starting-activity.html#StartActivity

跟踪 Android初学者教程时遇到问题

Eclipse说:supressLint无法解析为在该行@SuppressLint("NewApi")旁边有一个小x的类型错误。

我无法保存并运行该应用程序。

package com.example.myfirstapp;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.MenuItem;
import android.support.v4.app.NavUtils;
import android.annotation.TargetApi;
import android.os.Build;

public class DisplayMessageActivity extends Activity {

    @SuppressLint("NewApi")
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_display_message);

        // Make sure we're running on Honeycomb or higher to use ActionBar APIs
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
            // Show the Up button in the action bar.
            getActionBar().setDisplayHomeAsUpEnabled(true);
        }
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
        case android.R.id.home:
            NavUtils.navigateUpFromSameTask(this);
            return true;
        }
        return super.onOptionsItemSelected(item);
    }
}

4 个答案:

答案 0 :(得分:3)

试试这个:

import android.annotation.SuppressLint;

答案 1 :(得分:0)

问题是您需要整理导入。这通常是导致"无法解析为类型"错误。您还没有导入包含SuppressLint定义的代码包,因此编译器还不知道它的含义。

在Eclipse中,组织导入的快速方法是在Windows上按Ctrl + Shift + O或在Mac上使用Cmd + Shift + O.这会自动检查您需要的包并将它们添加到您的import语句中。

要使用@SuppressLint,您需要确保拥有android.annotation.SuppressLint包。

答案 2 :(得分:0)

我认为这有助于你......因为在API级别16中添加了supresslint注释

-set your build SDK to 16 or higher

-copy tools/support/annotations.jar from your Android SDK to the project 

试试这个......

答案 3 :(得分:0)

虽然 OP 的问题是针对 Eclipse,但我在 Android Studio 上遇到了类似的问题,问题是因为“CSV 插件”

卸载这个插件,为我解决了这个问题。 (可能对那些遇到类似情况并且由于此插件问题而遇到此问题的人有用)