[英]Android App Start up Issue
-EDITED這個區塊的主要代碼 -
我寫的這段代碼在啟動時遇到了問題。 它啟動應用程序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;
}
}
您必須設置內容視圖。
在super.onCreate(savedInstanceState);
加:
setContentView(R.layout.your_layout);
編輯:
這是發生了什么。 您將此代碼粘貼到您的活動中。
Eclipse給出了一個錯誤: “方法findPreference(String)未定義類型volman” 。 這是正常的,因為您必須擴展PreferenceActivity
而不是Activity
。
你做了快速修復: 創建方法findPreference(String) 。
這創建了一個返回null的方法,但是編譯了代碼。
這就是你得到NullPointerException
的原因。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.