2017-06-17 9 views
0

こんにちは私は、カメラのプレビューを含むSurfaceViewを持っている断片を持っています。サーフェイスビューに長方形を表示したいと思います。私はSurfaceViewにImageViewを置いてみましたが、SurfaceViewはそれを隠します..どのように把握できますか?画像をサーフェイスビューに表示

これは、rn

どのように見えるかと私は思いたくそれlooks

はここに私の断片だと:

public class Tab2Scan extends Fragment { 

ConnectionDetector cd; 
// QREader 
private SurfaceView mySurfaceView; 
private QREader qrEader; 
Context thisContext; 

View rootView; 

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, 
         Bundle savedInstanceState) { 

    rootView = inflater.inflate(R.layout.tab2scan, container, false); 


    getActivity().getWindow().setSoftInputMode(
      WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN); 

    thisContext = getContext(); 
    cd = new ConnectionDetector(thisContext); 

    mySurfaceView = (SurfaceView) rootView.findViewById(R.id.camera_view); 

    // Init QREader 
    // ------------ 
    qrEader = new QREader.Builder(thisContext, mySurfaceView, new QRDataListener() { 
     @Override 
     public void onDetected(final String data) { 

      //qrEader.stop(); 
      Intent intent = new Intent(getActivity(), ShowData.class); 
      intent.putExtra("variabile", data); 
      startActivity(intent); 
      getActivity().finish(); 
      //Toast.makeText(thisContext, result.getContents(),Toast.LENGTH_LONG).show(); 

      Log.d("QREader", "Value : " + data); 
     } 
    }).facing(QREader.BACK_CAM) 
      .enableAutofocus(true) 
      .height(mySurfaceView.getHeight()) 
      .width(mySurfaceView.getWidth()) 
      .build(); 

    qrEader.start(); 

    return rootView; 
} 



@Override 
public void onResume() { 
    super.onResume(); 

    // Init and Start with SurfaceView 
    // ------------------------------- 
    qrEader.initAndStart(mySurfaceView); 
    qrEader.start(); 
} 

@Override 
public void onPause() { 
    super.onPause(); 

    // Cleanup in onPause() 
    // -------------------- 
    qrEader.releaseAndCleanup(); 
} 

} 

そして、それはXMLです:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:orientation="vertical" 
    tools:context=".Main"> 

<SurfaceView 
    android:id="@+id/camera_view" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_marginTop="100dp" 
    android:layout_marginBottom="100dp" 
    /> 

</RelativeLayout> 

ありがとう!

答えて

0

RelativeLayoutImageViewを追加して、わかりやすい画像を使用してください。

ImageViewは、タグSurfaceView以下でなければならず、SurfaceViewと同じサイズでなければなりません。

+0

ありがとうございました! (Y) – arst3k