Android App启动问题

时间:2012-07-06 18:12:01

标签: android startup-error

- 重复此代码中的主要代码 -
我写的这段代码在启动时遇到了问题。它启动应用程序GUI并说“我们很抱歉”Appname“很遗憾地停止了工作。”

[这是logcat错误] [1]
我猜这与启动代码有关:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.dhd);

    DialogPreference dp = (DialogPreference) findPreference("mediavolume");
    dp.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {

        public boolean onPreferenceChange(Preference preference,
                Object newValue) {
            SeekBar volumeBar = (SeekBar) findViewById(R.id.seekBar);
            final AudioManager manager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);

            volumeBar.setMax(manager
                    .getStreamMaxVolume(AudioManager.STREAM_SYSTEM));
            volumeBar.setProgress(manager
                    .getStreamVolume(AudioManager.STREAM_SYSTEM));

            volumeBar
                    .setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
                        @Override
                        public void onStartTrackingTouch(SeekBar seekBar) {
                            Toast.makeText(volman.this, "Starting", Toast.LENGTH_LONG).show();

                        }

                        @Override
                        public void onStopTrackingTouch(SeekBar seekBar) {
                            Toast.makeText(volman.this, "Now Stopping", Toast.LENGTH_LONG).show();

                        }
                        public void onProgressChanged(SeekBar seekBar,
                                int progress, boolean fromUser) {
                            manager.setStreamVolume(
                                    AudioManager.STREAM_SYSTEM, progress,
                                    AudioManager.FLAG_SHOW_UI);
                            Toast.makeText(volman.this, "Now going Silent", Toast.LENGTH_LONG).show();

                        }
                    });

            return false;
        }
    });
}

private DialogPreference findPreference(String string) {
    return null;
}

}

1 个答案:

答案 0 :(得分:3)

您必须设置内容视图。

super.onCreate(savedInstanceState);之后添加:

setContentView(R.layout.your_layout);

修改

发生了什么事。 您将此代码粘贴到您的活动中。

Eclipse给出了一个错误:“方法findPreference(String)未定义类型volman”。这是正常的,因为您必须扩展PreferenceActivity 而不是Activity

你做了快速修复:创建方法findPreference(String)

这创建了一个返回null的方法,但是编译了代码。

这就是为什么你得到NullPointerException