2016-09-28 4 views
-2
import android.app.Activity; 

import android.content.Context; 
import android.content.pm.PackageManager; 
import android.graphics.Camera; 
import android.view.SurfaceHolder; 



public class MainActivity extends Activity { 

private SurfaceHolder mHolder; 
private Camera mCamera; 

public MainActivity(Context context, Camera camera) { 
    super(context); 
    mCamera = camera; 
} 


private boolean checkCameraHardware(Context context) { 
    if  (context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA)) { 
     return true; 
    } else 
     return false; 
} 

public static Camera getCameraInstance() { 
    Camera c = null; 
    try { 
     c = Camera.Open(); 
    } catch (Exception e) { 
    } 
    return c; 
} 

} 私はアンドロイドには私が理解していないいくつかのエラーがありますが、どうすれば修正できますか?

public MainActivity(Context context, Camera camera) { 
    super(context); 
    mCamera = camera; 

を入力したときのようなエラーが発生したトラブルを抱えていますこれは、 "活動中に適用することはできない活動()(android.Context.context。)" と述べている

そして、私は

public static Camera getCameraInstance() { 
    Camera c = null; 
    try { 
     c = Camera.Open(); 
    } catch (Exception e) { 
    } 
    return c; 
} 

を入力する際に​​も、それは言う: は、そこから の「方法.Openを解決できません」私の研究Camera.Open()はメソッドです。

+0

アンドロイドデベロッパーサイトを確認してください。https://developer.android.com/training/basics/firstapp/index.html – somia

答えて

0

アクティビティはオペレーティングシステムによってインスタンス化されるため、コンストラクタを構築する理由はありません。これに加えて、Activityにはパラメータを持つコンストラクタがないため、super(some_object)を呼び出すことはできません。

カメラクラスには静的メソッドOpen()がありません。静的メソッドはまったくありません。

+0

お返事ありがとうございます。 – Mira

+0

代わりに私はどうすればいいですか? – Mira

+0

写真を撮りたい場合は、このドキュメントをGoogle [link](https://developer.android.com/training/camera/index.html)からお読みください。簡単な例があり、サンプルコードをダウンロードすることもできます。 Googleのこのドキュメントは、[link](https://developer.android.com/training/basics/activity-lifecycle/index.html)で読む必要があります。 – Francesco

関連する問題