2014-12-24 32 views
0

我有一個簡單的查找欄,我打算用它調整系統卷。然而,它已經拋出了空指針異常很長一段時間:SeekBar的空指針異常設置最大值並設置進度

int max = audioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC); 
     Log.d("tag","+"+max); 
     volumeSeekbar.setMax(max); 
     int progress = audioManager.getStreamVolume(AudioManager.STREAM_MUSIC); 
     volumeSeekbar.setProgress(progress); 

     volumeSeekbar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener(){ 
      @Override 
      public void onStopTrackingTouch(SeekBar arg0) 
      { 
      } 

      @Override 
      public void onStartTrackingTouch(SeekBar arg0) 
      { 
       Toast.makeText(getApplicationContext(),"HEREO",Toast.LENGTH_SHORT).show(); 
      } 

      @Override 
      public void onProgressChanged(SeekBar arg0, int progress, boolean arg2) 
      { 
       audioManager.setStreamVolume(AudioManager.STREAM_MUSIC,progress, 0); 
       Toast.makeText(getApplicationContext(),""+progress,Toast.LENGTH_SHORT).show(); 
      } 
     }); 

進展和最大都是有效的整數。但是,空指針異常不斷拋出!

9月12日至24日:23:07.471 11705-11705/com.company.volume W/System.err的:顯示java.lang.NullPointerException 9月12日至24日:23:07.472 11705-11705/com.company。 volume W/System.err:at com.company.volume.MainActivity.initControls(MainActivity.java:71) 12-24 09:23:07.472 11705-11705/com.company.volume W/System.err:at com .company.volume.MainActivity.onCreate(MainActivity.java:61) 12-24 09:23:07.472 11705-11705/com.company.volume W/System.err:at android.app.Activity.performCreate(Activity。 java:5248) 12-24 09:23:07.473 11705-11705/com.company.volume W/System.err:at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1110) 12-24 09:23 :07.473 11705-11705/com.company.volume W/S ystem.err:at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2162) 12-24 09:23:07.473 11705-11705/com.company.volume W/System.err:at android.app.ActivityThread。 handleLaunchActivity(ActivityThread.java:2257) 12-24 09:23:07.473 11705-11705/com.company.volume W/System.err:at android.app.ActivityThread.access $ 800(ActivityThread.java:139) 12 -24 09:23:07.474 11705-11705/com.company.volume W/System.err:at android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1210) 12-24 09:23:07.474 11705- 11705/com.company.volume W/System.err:at android.os.Handler.dispatchMessage(Handler.java:102) 12-24 09:23:07.474 11705-11705/com.company.volume W/System。 err:at android.os.Looper.loop(Looper.java:136) 12-24 09:23:07.474 11705-11705/com.company.volume W/System.err:at andr oid.app.ActivityThread.main(ActivityThread.java:5086) 12-24 09:23:07.475 11705-11705/com.company.volume W/System.err:at java.lang.reflect.Method.invokeNative(Native方法) 12-24 09:23:07.475 11705-11705/com.company.volume W/System.err:at java.lang.reflect.Method.invoke(Method.java:515) 12-24 09:23 :07.475 11705-11705/com.company.volume W/System.err:at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:785) 12-24 09:23:07.475 11705-11705 /com.company.volume W/System.err:at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601) 12-24 09:23:07.475 11705-11705/com.company.volume W /System.err:dalvik.system.NativeStart.main(原生方法)
+0

你正在設置volumeSeekbar實例的代碼在哪裏?像'volumeSeekbar =(SeekBar)findViewById(R.id.seekbar)'' – kevskree

+0

'你在MainActivity.class的onCreate()期間引用了視圖 –

回答

1

proba bly你的volumeSeekbarnull。不是progressmax的值。確保volumeSeekbar正確定義。

+1

我有一個導航抽屜,我在子視圖中定義了它。所以當我試圖打電話給我的尋求欄創建它是空的。謝謝。 – wayway