2015-07-25 3 views
1

Я пытаюсь реализовать фрагменты с помощью FragmentPagerAdapter .. В одном из фрагментов я пытаюсь реализовать камеру с использованием намерения .. но как только эта вкладка будет выбрана, приложение отключится. я прост в использовании камеры. Кодекс MyFrag2.java:Camera in Fragment in Fragmentpageradapter

import android.content.Context; 
    import android.content.Intent; 
    import android.content.pm.PackageManager; 
    import android.graphics.Bitmap; 
    import android.net.Uri; 
    import android.os.Bundle; 
    import android.provider.MediaStore; 
    import android.support.v4.app.Fragment; 
    import android.view.LayoutInflater; 
    import android.view.View; 
    import android.view.ViewGroup; 
    import android.widget.ImageView; 
    import android.widget.Toast; 

    import java.io.File; 
    import java.io.IOException; 
    public class MyFrag2 extends Fragment { 
private static final int CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE = 100; 
private Uri fileUri; 
ImageView img; 

@Override 
public void onCreate(Bundle savedInstanceState) { 

    super.onCreate(savedInstanceState); 
    img = (ImageView)getView().findViewById(R.id.imgview); 
    img.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 
      startActivityForResult(intent,0); 
     } 
    }); 
    // 

} 
@Override 
public void onActivityResult(int requestCode, int resultCode, Intent data) { 
    // TODO Auto-generated method stub 
    super.onActivityResult(requestCode, resultCode, data); 
    Bitmap bp = (Bitmap) data.getExtras().get("data"); 
    img.setImageBitmap(bp); 

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

     return inflater.inflate(R.layout.my_frag_layout2, container, false); 
} 
    } 
+0

Почему закрыли? Опубликовать stacktrace –

+0

Мое окно logcat остается пустым. Так что я не могу понять, что именно происходит. –

ответ

0

В фрагменте мы должны читать ImageView в oncreateview

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

View view = inflater.inflate(R.layout.my_frag_layout2, container); 

img = (ImageView)view.findViewById(R.id.imgview); 
img.setOnClickListener(new View.OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 
     startActivityForResult(intent,0); 
    } 
}); 

    return view; 
}