2012-12-03 26 views
0

我正在使用seekBar來控制自定義相機應用的縮放。我的應用程序有時刪除cameraPreview並重新添加cameraPreview我想重置我的搜索欄的進度。seekBar設置進度拋出空指針異常

public void restartCam() { 

     //zoomCtrl.setVerticalScrollbarPosition(0x00000000); 
     camPreview = new CamSurfaceView(this.getApplicationContext(), camFace); 
     frame.addView(camPreview); 
     zoomCtrl.setProgress(0); 
    } 

,但我得到一個空指針:

12-03 12:18:54.319: E/AndroidRuntime(15805): FATAL EXCEPTION: main 
12-03 12:18:54.319: E/AndroidRuntime(15805): java.lang.NullPointerException 
12-03 12:18:54.319: E/AndroidRuntime(15805): at com.sapientnitro.lcinstore2.view.CamSurfaceView.zoomTo(CamSurfaceView.java:120) 
12-03 12:18:54.319: E/AndroidRuntime(15805): at com.sapientnitro.lcinstore2.activities.CustomCamera.onProgressChanged(CustomCamera.java:643) 
12-03 12:18:54.319: E/AndroidRuntime(15805): at android.widget.SeekBar.onProgressRefresh(SeekBar.java:89) 
12-03 12:18:54.319: E/AndroidRuntime(15805): at android.widget.ProgressBar.doRefreshProgress(ProgressBar.java:609) 
12-03 12:18:54.319: E/AndroidRuntime(15805): at android.widget.ProgressBar.refreshProgress(ProgressBar.java:621) 
12-03 12:18:54.319: E/AndroidRuntime(15805): at android.widget.ProgressBar.setProgress(ProgressBar.java:670) 
12-03 12:18:54.319: E/AndroidRuntime(15805): at android.widget.ProgressBar.setProgress(ProgressBar.java:651) 
12-03 12:18:54.319: E/AndroidRuntime(15805): at com.sapientnitro.lcinstore2.activities.CustomCamera.restartCam(CustomCamera.java:568) 
12-03 12:18:54.319: E/AndroidRuntime(15805): at com.sapientnitro.lcinstore2.activities.CustomCamera.cameraOn(CustomCamera.java:435) 
12-03 12:18:54.319: E/AndroidRuntime(15805): at com.sapientnitro.lcinstore2.activities.CustomCamera$5.onClick(CustomCamera.java:317) 
12-03 12:18:54.319: E/AndroidRuntime(15805): at android.view.View.performClick(View.java:3558) 
12-03 12:18:54.319: E/AndroidRuntime(15805): at android.view.View$PerformClick.run(View.java:14157) 
12-03 12:18:54.319: E/AndroidRuntime(15805): at android.os.Handler.handleCallback(Handler.java:605) 
12-03 12:18:54.319: E/AndroidRuntime(15805): at android.os.Handler.dispatchMessage(Handler.java:92) 
12-03 12:18:54.319: E/AndroidRuntime(15805): at android.os.Looper.loop(Looper.java:137) 
12-03 12:18:54.319: E/AndroidRuntime(15805): at android.app.ActivityThread.main(ActivityThread.java:4514) 
12-03 12:18:54.319: E/AndroidRuntime(15805): at java.lang.reflect.Method.invokeNative(Native Method) 
12-03 12:18:54.319: E/AndroidRuntime(15805): at java.lang.reflect.Method.invoke(Method.java:511) 
12-03 12:18:54.319: E/AndroidRuntime(15805): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:790) 
12-03 12:18:54.319: E/AndroidRuntime(15805): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:557) 
12-03 12:18:54.319: E/AndroidRuntime(15805): at dalvik.system.NativeStart.main(Native Method) 

我的進度變化:

@Override 
    public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { 

     // TODO Auto-generated method stub 
     if (mode.equals("camera")) { 
      camPreview.zoomTo(progress); 
     } 

    } 
+0

發表您的onProgressChanged,因爲這是它崩潰... – njzk2

+0

剛並認識到相機還沒有準備好..問題解決.. thannks – erik

+0

所以只是發佈它的答案,並接受它..刪除問題。 –

回答

0
Please, try this. 

    if (zoomCtrl!= null) { 
     zoomCtrl.setProgress(0); 
    }