반응형

안드로이드 184

[안드로이드] InputStream, OutputStream으로 파일 이동하기

InputStream, OutputStream으로 파일 이동하기 대부분의 웹사이트에는 게시판 등에 파일업로드가 들어가기 때문에 파일을 지우거나 삭제하는 기능이 필요했다.(솔직히 전에는 빡빡한 일정과 사이트 분위기 봐서 무시해버린것도 사실인데.. ㅎ) 이런저런 상황에서도 필요할테고 나같은 경우에는 파일업로드하고(cos.jar가 일단 다 업로드를 해버리니까...) 확장자같은 거 등 유효성을 체크해서 통과한 파일만 실제 폴더에 옮겨주고 나머진 지워준다. 임시폴더는 어차피 외부로 공개도 안될테니... ㅎ Java // 파일을 해당위치로 복사하고 지운다. public boolean moveFile(String source, String dest) { boolean result = false; FileInputSt..

[안드로이드] 안드로이드 자바 명명관례 Naming Conventions

명명 관례(Naming Conventions) 1. 클래스 명은 반드시 대문자로 시작한다.예) Myclass(O), myclass(X), myClass(X) 2. 패키지를 표현하는 이름은 모두 소문자를 사용한다. mypackage, com.company.application.ui 패키지 이름의 시작부는 반드시 도메인 이름으로 소문자를 사용해야만 합니다. 충돌 방지를 위해 패키지명은 보통 도메인의 역순으로 한다.도메인이 www.myhouse.com 이라면패키지는 com.myhouse 정도로 하면 됩니다. 3. 변수의 이름은 반드시 소문자로 시작하고 카멜(낙타)명명법을 이용한다.(명사) account, eventHandler 예) Account account; // 선언문변수와 메소드는 카멜 명명법을 쓴다...

[안드로이드] 리스트뷰, 리사이클러뷰 getView 재활용, 스크롤 문제 해결

[안드로이드] 리스트뷰, 리사이클러뷰 getView 재활용, 스크롤 문제 해결ListView, RecyclerView getView Scroll 여러 뷰를 가져올 경우, 인덱스를 제대로 가져오더라도 꼬일 경우, 뷰가 중복되는 경우 모두 해결된다. GetViewType(), GetViewTypeCount() 사용하면 된다. 설명, 예제 : https://learnncode.wordpress.com/2014/01/21/listview-getviewtype-and-getviewtypecount-in-action/ githup 예제 : https://github.com/learnNcode/ListWithDiffRowViewType

[안드로이드] 이미지뷰 핀치줌, 확대, 축소

[안드로이드] 이미지뷰 핀치줌, 확대, 축소 1. build.gradle (Project: project명) allprojects{} 안에 repositories {}에 maven { url "https://jitpack.io" } 추가allprojects { repositories { ... maven { url "https://jitpack.io" } } } 2. build.gradle (Module: app) dependencies{}에 compile 'com.github.chrisbanes:PhotoView:1.3.0' 추가compile 'com.github.chrisbanes:PhotoView:1.3.0' 3. Activity 에서 적용하기 PhotoViewAttacher attacher;Ima..

[안드로이드] 화면캡쳐 방지 소스코드

[안드로이드] 화면캡쳐 방지 소스코드 어플 화면이 캡쳐되지 않도록 해달라는 요청을 받고 검색하다가 발견한 소스코드. 불가능할줄 알았는데 api level 1부터 이런게 있었다니 .. 충격 getWindow().addFlags(WindowManager.LayoutParams.FLAG_SECURE); 정확한 원리는 모르겠는데 몇몇 기종으로 테스트 해 본 결과 어떤 폰에서는 캡쳐기능을 사용할 수 없습니다 라는 토스트를 출력하고 어떤 폰에서는 캡쳐 직전 바로 검은 화면을 띄워서 해당 화면이 캡쳐되도록 하는 듯 하다. 위 코드 한줄만 넣어주면 적용 완료. 특정 영역에서만 캡쳐를 방지하고싶다면, 이외의 영역에는getWindow().clearFlags(WindowManager.LayoutParams.FLAG_SECU..

[안드로이드] IllegalArgumentException, contains a path separator

[안드로이드] IllegalArgumentException 오류, contains a path separator 오류 getExternalStorageDirectory 함수를 사용하지 않고 "/MOVIES/filename" 등의 경로를 File 생성자에 직접 넣어주면IllegalArgumentException (예 'sdcard/filename contains a path separator')이 발생한다. 해결 사용법 : Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_MOVIES); 자세한 내용 : http://newsight.tistory.com/50

안드로이드 intent putExtra arraylist

[안드로이드] intent putExtra arrayList ArrayList VO 에 있는 String 을 보낼 경우 보낼 때 Intent intent = new Intent(this, SecondActivity.class); ArrayList al = new ArrayList(); for (int i = 0; i < array_vo.size(); i++) { list.add(array_vo.get(i).string_name); } intent.putExtra("arraylist", al); startActivity(intent); 받을 때ArrayList array_vo = new ArrayList(); //원래 있던 VO Intent intent = getIntent(); ArrayList al =..

[안드로이드] Bitmap 회전, 좌우/상하 반전 (rotate, inverse)

[안드로이드] Bitmap 회전, 좌우/상하 반전 (rotate, inverse) # [Android] Bitmap 크기 조절 / 겹치기 / 잘라내기 바로가기 구현 예제 Matrix를 이용한 Bitmap 변형 Bitmap을 생성할때 matrix에 속성을 넣어 생성하면 Matrix에 따른 옵션을 변경 할 수 있다.회전, 반전, 이동, 크기변경 등 여러가지 속성을 가지고 있다. Bitmap 상하 / 좌우 반전하기Matrix sideInversion = new Matrix(); sideInversion.setScale(1, -1); // 상하반전sideInversion.setScale(-1, 1); // 좌우반전 Bitmap sideInversionImg = Bitmap.createBitmap(bitmap, ..

[안드로이드] 카메라 앞, 뒤 전환

[안드로이드] 카메라 앞, 뒤 전환하기 카메라 촬영 기능에서 전면 카메라, 후면 카메라 전환 기능이 필요해서 만든 소스다. CAMERA_FACING_BACK, CAMERA_FACING_FRONT 값만 설정해서 SurfaceView를 새로 만들기만 하면 되기때문에, 카메라 전환 기능 자체는 구현하기 어렵지 않았다. 다만 최초 1회 카메라 전환 기능이 동작한 이후 다시 버튼을 누르면 OnClick 리스너가 동작하지 않아 당황했는데, SurfaceView를 새로 만들면서 setContentView를 다시 했기 때문에 기존의 리스너 설정도 다 날아가는 모양이다. 그래서 버튼들에 대한 OnClickListener들도 다시 설정하도록 했는데, 이렇게 하는 것이 맞는 것인지 아니면 다른 효과적인 방법이 있는데 내가 ..

[안드로이드] Glide Library 사용시 참고 사항!!

[안드로이드] Glide Library 사용시 참고 사항!! Glide Library를 이용하여 이미지를 로딩할 때, 아래와 같은 Exception이 발생하신 분은 한번 참고해보세요.Exception이 발생하지 않더라도 안정성을 위해 한번 보셔도 나쁘지 않을 듯 합니다. Fatal Exception: java.lang.RuntimeException: Error receiving broadcast Intent { act=refresh_main_navi_event flg=0x10 } in com.package.activity.user.MainActivity$6@283944fc at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:933) a..

[안드로이드] 이미지 경로 이미지뷰에 출력

[안드로이드] 이미지 경로 이미지뷰에 출력하기 SD-Card에서 이미지의 경로를 받아와 ImageView에 등록하는것을 원하는거라면 Bitmap을 써서File imgFile = new File("/sdcard/Images/test_image.jpg"); if(imgFile.exists()){ Bitmap myBitmap = BitmapFactory.decodeFile(imgFile.getAbsolutePath()); ImageView myImage = (ImageView) findViewById(R.id.imageviewTest); myImage.setImageBitmap(myBitmap); } 이런식으로하시면됩니다.물론 안드로이드 매니페스트 파일에 를 등록하셔야합니다. [ 출처 : http://hash..

[안드로이드] 폴더 삭제

[안드로이드] 폴더 삭제 안드로이드에서 파일을 이용한 프로젝트를 할 경우, 파일들을 폴더 단위로 관리 할 것입니다. 물론 귀찮으면 패키지 폴더에 하시구요ㅠㅠ 자바 이클립스로 개발하면, DDMS를 바로 볼 수 있습니다. DDMS에서 폴더 구조를 볼 수도있고, HostPC로 파일을 가져올 수도있습니다. 반대로 파일을 애물레이터에 넣을 수도있지요. 삭제도 가능합니다. 그러나.. 폴더는 삭제 할 수 없습니다. 폴더 삭제는 코드로 할 수 밖에 없는 것 같습니다. 혹시 다른 방법을 아시는 분은 댓글 부탁드립니다. 그리고 폴더를 삭제하려면, 하위 폴더 및 파일들을 모두 삭제 해야합니다. 소스코드는 '안드로이드펍'에서 jurinac님께서 작성하신 코드입니다. 간단히 설명하면, 파일은 삭제하고, 디렉토리는 하위 디렉토리..

[안드로이드] bitmap drawable 변환 (비트맵 drawable)

안드로이드 비트맵 drawable 간에 변환하기 안드로이드 비트맵 drawable 변환은 자주 사용되는 녀석입니다.비트맵을 drawable로 drawable을 비트맵으로 변경하여 자바코드상에서 수시로 사용되죠. 사용방법은 간단하니 하나씩 살펴 보도록 하겠습니다. 비트맵을 Drawable로 변환 BitmapDrawable bitmapDrawable = (BitmapDrawable)bitmap;Drawable drawable = (Drawable)bitmapDrawable;BitmapDrawable는 그냥 형변환만 해주시면 됩니다. Bitmap bitmap = Bitmap.createBitmap(w, h, Bitmap.Config.ARGB_8888);Drawable drawable = new BitmapDr..

[안드로이드] 머터리얼 네비게이션 드로어

[안드로이드] 머터리얼 네비게이션 드로어 현재 구글 플레이 스토어에서 사용되는 네비게이션 드로어가 롤리팝과 머티리얼 디자인이 나오면서 적용이 되었습니다. 처음에 저도 보고 이거 진짜 잘만들었다. 섬세하다 라고 말했던 기억이나네요 .쓰기도 편하게 정말 잘 되어있어 이렇게 포스트를 쓰고 있습니다. 1. 준비 머티리얼 네비게이션 드로어를 사용하기 위해서는 머티리얼 셋팅이 되어 있어야 합니다. 셋팅에 관해서는 기존 포스트 및 android studio 기본 셋팅이여서 생략하겠습니다.위 링크를 참조하시면 되겠습니다. 2. 작성 방법 xml 123456789101112131415161718192021222324252627282930313233343536373839404142 Colored by Color Scrip..

반응형