相关疑难解决方法(0)

将项目导入Eclipse后,"必须覆盖超类方法"错误

任何时候我必须将我的项目重新导入Eclipse(如果我重新安装Eclipse,或者更改了项目的位置),几乎所有重写的方法都没有正确格式化,导致错误:

该方法必须覆盖超类方法

值得注意的是,这是Android项目 - 无论出于何种原因,方法参数值并不总是填充,所以我必须自己手动填充它们.例如:

list.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {

    //These arguments have their correct names
    public void onCreateContextMenu(ContextMenu menu, View v, 
                                    ContextMenuInfo menuInfo) {                 
    }

});
Run Code Online (Sandbox Code Playgroud)

最初将填充如下:

list.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {

    //This methods arguments were not automatically provided    
    public void onCreateContextMenu(ContextMenu arg1, View arg2,
                                    ContextMenuInfo arg3) {
    }

});
Run Code Online (Sandbox Code Playgroud)

奇怪的是,如果我删除我的代码,并让Eclipse自动重新创建方法,它使用我已经拥有的相同参数名称,所以我真的不知道问题在哪里,除此之外它自动格式化方法我.

这需要手动重新创建所有重写的方法,这变得非常痛苦.如果有人能解释为什么会发生这种情况或如何解决它......我会非常高兴.

也许这是由于我格式化方法的方式,这是在另一个方法的参数内?

java eclipse android overriding superclass

1223
推荐指数
11
解决办法
25万
查看次数

Android 7的Java 7语言功能

只是想知道是否有人尝试过使用Android的新Java 7语言功能?我知道Android会读取Java吐出的字节码并将其转换为dex.所以我想我的问题是它能理解Java 7的字节码吗?

java android bytecode java-7

189
推荐指数
5
解决办法
5万
查看次数

Android的Java版本如何与Java SE版本相关?

我一直想知道用于Android开发的Java版本如何与Java SE版本相关.例如,我今天正在阅读有关"类型推断和通用方法"的内容,这是Java SE 7中添加的一项功能.我不知道自己,"我可以在Android代码中使用它吗?"

当然,我可以将代码输入到Android项目中并查看它是否可以编译,但我会更高兴在我脑海中进行某种映射.

我已经尝试谷歌搜索此信息,检查Android文档等,但无法找到答案.

编辑:我对语言功能更感兴趣,例如Android Java语法版本如何与Java SE语法相关.

java android version

71
推荐指数
1
解决办法
3万
查看次数

为什么我用@Override获得"必须覆盖超类方法"?

以下代码在该public void onClick行生成此错误消息.

此行的多个标记
- 实现android.view.View.OnClickListener.onClick
- 类型new View.OnClickListener(){}的onClick(View)方法必须覆盖超类方法

我不明白为什么.这段代码来自我见过的众多例子.什么可能是错的?

private Button audioButton;

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    audioButton = (Button) findViewById(R.id.imageButton1);
    audioButton.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View button) {
            if (button.isSelected()) {
                button.setSelected(false);
            }
            else {
                button.setSelected(true);
            }
        }
    });
}
Run Code Online (Sandbox Code Playgroud)

java android compiler-errors

64
推荐指数
3
解决办法
7万
查看次数

Android计划支持Java7吗?

由于Android目前不支持java7,我发现自己想知道如果他们正在努力支持它,他们是否已发表官方评论?

android dalvik java-7

39
推荐指数
1
解决办法
2万
查看次数

在Eclipse中覆盖注释的错误

@Override在Eclipse中有一个令人讨厌的注释问题.通常,当我在新PC上导入工作项目时,Eclipse会将某些@Override注释标记为错误.如果我删除注释一切都很好,Eclipse也表示方法覆盖了父方法,但添加覆盖注释会再次导致错误.我目前正在开发一个Android项目,所以它可能是Android的问题,而不是Eclipse.

eclipse android overriding annotations

37
推荐指数
3
解决办法
2万
查看次数

@Override注释错误(android prefs)

当我尝试使用此代码启用我的应用程序的首选项时

import android.app.Activity;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.preference.Preference;
import android.preference.PreferenceActivity;
import android.preference.Preference.OnPreferenceClickListener;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.RadioButton;
import android.widget.Toast;
import android.widget.CompoundButton.OnCheckedChangeListener;


public class Preferences extends PreferenceActivity {

private RadioButton btn01;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    addPreferencesFromResource(R.xml.preferences);
    btn01 = (RadioButton)findViewById(R.id.RadioButton01);
    Preference customPref = (Preference) findPreference("customPref");

    customPref.setOnPreferenceClickListener(new OnPreferenceClickListener(){

        public boolean onPreferenceClick(Preference preference) {
            Toast.makeText(getBaseContext(),"The Custom Preference Has Been Clicked",Toast.LENGTH_LONG).show();
            SharedPreferences customSharedPreference = getSharedPreferences("myCutomSharedPrefs", Activity.MODE_PRIVATE);
            SharedPreferences.Editor editor = customSharedPreference.edit();
            editor.putString("myCustomPref","The preference has been clicked");
            editor.commit();
            return true;
        }


        public …
Run Code Online (Sandbox Code Playgroud)

android overriding annotations android-preferences

19
推荐指数
3
解决办法
2万
查看次数

导入后,ActionBarSherlock库充满了错误

好的,我正在尝试使ActionBarSherlock正常工作,所以我通过以下方式导入了库:

Creating New Project > Create Project From Existing Source > Choosing library from the ActionBarSherlock folder
Run Code Online (Sandbox Code Playgroud)

之后我使用相同的方法从samples文件夹导入了一个示例项目,库和示例都设置为Android 15 Build Path!

我的问题是,库中出现了100多个错误,各种关于Call的东西需要api 11级,我不知道什么是错的!

我尝试过的事情:
清理项目
设置构建路径为13,14和15

大多数错误都说:

Call requires API level 11 (current min is 8): android.app.something
Run Code Online (Sandbox Code Playgroud)

更新:我试图右键单击lib文件并单击添加到构建路径,这不起作用,这些是我得到的一些错误:

Description Resource    Path    Location    Type
The method add(CharSequence) of type MenuWrapper must override a superclass method  MenuWrapper.java    /com_actionbarsherlock/src/com/actionbarsherlock/internal/view/menu line 33 Java Problem
The method add(int, int, int, CharSequence) of type MenuWrapper must override a superclass method   MenuWrapper.java    /com_actionbarsherlock/src/com/actionbarsherlock/internal/view/menu line 43 Java Problem …
Run Code Online (Sandbox Code Playgroud)

java android actionbarsherlock android-actionbar

19
推荐指数
2
解决办法
6977
查看次数