卡住@SuppressLint(“NewApi”)(developer.android.com/training/basics/firstapp/starting-activity)

时间:2013-02-01 09:56:36

标签: android

我是Android的佼佼者,目前仍然坚持使用:http://developer.android.com/training/basics/firstapp/starting-activity.html

创建第二个活动部分中,当我尝试使用代码时:

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);
    }
}

我收到以下错误:

@SuppressLint(“NewApi”) - >注释类型SuppressLint的属性值未定义。

if(Build.VERSION.SDK_INT> = Build.VERSION_CODES。 HONEYCOMB ) - > HONEYCOMB无法解析或不是字段。

getActionBar ()setDisplayHomeAsUpEnabled(真)。 - >对于DisplayMessageActivity类型,方法getActionBar()未定义。

NavUtils .navigateUpFromSameTask(本); - >无法解析NavUtils

有人让我知道如何解决? 这是我导入的内容:

import android.app.Activity;
import android.os.Build;
import android.os.Bundle;
import android.view.MenuItem;

非常感谢!

7 个答案:

答案 0 :(得分:24)

在API级别16中添加了

SuppressLint注释。您需要:

  • 将您的构建SDK设置为16或更高,或
  • 将您的Android SDK中的tools/support/annotations.jar复制到项目libs

答案 1 :(得分:22)

  

import android.annotation.SuppressLint;

答案 2 :(得分:11)

我遇到了完全相同的问题。 CTRL-SHIFT-o(组织导入)为我填写了缺少的导入。

答案 3 :(得分:5)

您的构建目标未设置为API级别14或更高级别。这不是错误,请关闭此问题。

(在eclipse:Project => Properties => Android)

答案 4 :(得分:2)

将光标移到“SuppressLint”上,它将以红色下划线。选择修复选项“修复项目设置”。从弹出列表中选择“添加存档'annotations.jar'。祝你节日快乐。

答案 5 :(得分:2)

如果你设置了行@SuppressLint("NewApi"),它就可以了 上面的班级宣言! (在this lesson中,此行位于onCreate内,但不起作用!)

答案 6 :(得分:2)

ctrl + shift + O导入库和ctrl + s保存使得错误消失了。