2014-05-02 68 views
0

我得到這個奇怪的錯誤在我的代碼 aAndroid攝像頭和SurfaceView不工作

無法解析符號 'surfaceCallback'

theese是我目前的進口

import android.content.Intent; 
import android.hardware.Camera; 
import android.os.Bundle; 
import android.support.v4.app.Fragment; 
import android.support.v4.app.FragmentManager; 
import android.support.v7.app.ActionBar; 
import android.support.v7.app.ActionBarActivity; 
import android.view.LayoutInflater; 
import android.view.Menu; 
import android.view.MenuItem; 
import android.view.SurfaceHolder; 
import android.view.SurfaceView; 
import android.view.View; 
import android.view.ViewGroup; 
import android.widget.ArrayAdapter; 
import android.widget.TextView; 
+0

在這裏發表您logcat的錯誤。 – prakash

+0

我還沒有運行的代碼,因爲我不能編譯它與這個錯誤:( –

+0

有你實現surfacecall後臺界面 –

回答

0

工具SurfaceHolder.Callback上您的活動thisaddCallBack();

0

SurfaceHolder.Callback與其Surface相關。

有人拿着顯示器表面的抽象接口。允許您控制曲面大小和格式,編輯曲面中的像素以及監視曲面的變化。該接口通常可通過SurfaceView類獲得。

當使用從不是運行另一個線程這個接口的SurfaceView,你將要仔細閱讀方法lockCanvas()Callback.surfaceCreated()

你需要實現的SurfaceView,如下SurfaceCallback接口:

public class callbackSurfaceMethod implements SurfaceHolder.Callback{ 
    @Override 
public void surfaceCreated(SurfaceHolder holder) { 
    // TODO Auto-generated method stub 

} 

@Override 
public void surfaceChanged(SurfaceHolder holder, int format, int width, 
     int height) { 
    // TODO Auto-generated method stub 

} 

@Override 
public void surfaceDestroyed(SurfaceHolder holder) { 
    // TODO Auto-generated method stub 

} 

改變你的代碼。

surfaceView = (SurfaceView)findViewById(R.id.surfaceview); 
surfaceHolder = surfaceView.getHolder(); 
surfaceHolder.addCallback(callbackSurfaceMethod); 
+0

,但我已經實施'ActionBar.OnNavigationListener' –

+0

它與'SurfaceView'不相關'ActionBar ' – GrIsHu

+0

我知道了,但是你不能實現多個庫文件 –

0

試試這個代碼,

surfaceView = (SurfaceView)findViewById(R.id.surfaceview); 
surfaceHolder = surfaceView.getHolder(); 
surfaceHolder.addCallback(this); 
surfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);