Проблема запуска приложения для Android
-УДАЛЕНО ГЛАВНЫЙ КОД В ЭТОМ БЛОКЕ
Этот код, который я пишу, имеет проблему при запуске. Он запускает графический интерфейс приложения и говорит: "К сожалению," Имя приложения ", к сожалению, перестало работать".
[Вот ошибки 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 ответ
Вы должны установить вид контента.
После super.onCreate(savedInstanceState);
добавлять:
setContentView(R.layout.your_layout);
Редактировать:
Вот что случилось. Вы вставили этот код в свою активность.
Eclipse дал вам ошибку, которая: "Метод findPreference(String) не определен для типа volman". Что нормально, потому что вы должны продлитьPreferenceActivity
скорее, чем Activity
,
Вы сделали быстрое исправление: создайте метод findPreference(String).
Это создало метод, который возвращает ноль, но заставил ваш код скомпилироваться.
Вот почему вы получаете NullPointerException
,