2012-07-06 4 views
1

-이 블록의 기본 코드는
으로 작성되었습니다. 작성한이 코드는 시작할 때 문제가 있습니다. 앱 GUI를 시작하고 "죄송합니다"Appname이 "불행히도 작동을 멈췄습니다."라고 말합니다.Android 앱 시작 문제

@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

오류 로그를 게시하십시오. –

답변

3

당신은 설정해야합니다 :

[1]
내가 여기 시작 코드가 있습니다 함께 할 수있는 뭔가가 같은데요 [다음은 로그 캣 오류입니다] 콘텐츠보기. super.onCreate(savedInstanceState); 추가 한 후

:

setContentView(R.layout.your_layout); 

편집 :

여기 무슨 일이 있었는지입니다. 이 코드를 활동에 붙여 넣었습니다.

Eclipse에서 오류가 발생했습니다. "volP 유형에 대해 findPreference (String) 메소드가 정의되지 않았습니다.". Activity이 아닌 PreferenceActivity을 확장해야하기 때문에 정상입니다.

빠른 수정 : 메소드 만들기 findPreference (String).

이렇게하면 null을 반환하지만 코드를 컴파일하는 메서드를 만들었습니다.

그 이유는 NullPointerException입니다.

+0

나는 UI가 있으며 심지어 UI로 실행해도 여전히 충돌이 발생합니다. –

+0

UI가 있다는 것은 무엇을 의미합니까? 액티비티가 UI에 연결되는 방식은 위에서 설명한대로 setContentView()를 사용하는 것입니다. – CSAntol

+0

이전에 코드에서 사용한 적이 있지만 레이아웃 호출에서도 여전히 충돌합니다. –