여기 커스텀뷰 (원형 이미지뷰)를 사용하여 커스텀 뷰를 눌렀을때 갤러리와 연동되서 사진을 커스텀뷰에 띄우려고 하는데요..
요분 블로그에 갤러리 불러오는걸 적용해봤는데요..
아무것도 안건드리고 커스텀뷰 메인부분에 갤러리만 추가했거든요.. 실행이 안되요..ㅠㅠ
커스텀뷰는 받아서 열면 두개의 모듈로 나눠져있고 커스텀뷰 부분 이랑 메인부분으로 나눠져있어요.
MainActivity.java
건드린 추가부분은 ★로 표시할게여
public class MainActivity extends Activity {
★CircleImageView imageView;
★private static final int PICK_FROM_GALLERY =2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
★imageView = (CircleImageView) findViewById(R.id.ivImageSelected);
★imageView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
intent.putExtra("crop", "true");
intent.putExtra("aspectX",0);
intent.putExtra("aspectY",0);
intent.putExtra("outputX",150);
intent.putExtra("outputY",150);
try{
intent.putExtra("return-data",true);
startActivityForResult(Intent.createChooser(intent,
"Complete action using"),PICK_FROM_GALLERY);
} catch(ActivityNotFoundException e){
}
}
});
if (savedInstanceState == null) {
getFragmentManager().beginTransaction()
.add(R.id.container, new MainFragment())
.commit();
}
}
★protected void onActivityResult(int requestCode,int resultCode,Intent data){
if(requestCode == PICK_FROM_GALLERY){
Bundle extras2 = data.getExtras();
if(extras2 != null){
Bitmap photo = extras2.getParcelable("data");
imageView.setImageBitmap(photo);
}
}
}
public static class MainFragment extends Fragment {
public MainFragment() {
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_main, container, false);
return rootView;
}
}
}
커스텀뷰 부분은 글자 초과로 안올라가네요..
뭐가 문제여서 실행이 안되는지 모르겠습니다.ㅠㅠ 도와주시면 감사하겠습니다.