나의 플랫폼 썸네일형 리스트형 [Android] ACTION_PICK 사용 (이미지 가져오기) 이미지나 비디오 파일을 가져 올때 아래와 같은 소스 형태로 가져 오시는 분들 이글 한번 참고 하세요. private void takePictureFromGallery() { Intent intent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.INTERNAL_CONTENT_URI); startActivityForResult(intent, PICK_FROM_FILE); }위와 같은 형태로 가져올 수도 있지만, 더욱더 편한 함수가 있어서 공유하고자 합니다. private void takePictureFromGallery() { startActivityForResult( Intent.createChooser( new Intent(Intent.ACTION.. 더보기 [Android] ButterKnife Library 우선, 이 글을 보시기전에 Proguard를 적용하실 App은 약간 고려해보세요.저 같은 경우, 여러 Library와 혼동되서 쓰다보니 ButterKnife 쪽에서 Proguard를 하면 찾지 못하는 부분이 있었습니다.그런 분들은 사용 안하시는편이 좋을듯 합니다. ButterKnife를 접하게 된지는 얼마 되지 않았습니다.처음에 annotation으로 멀 하는거지? 하며 크게 관심을 가지지 않았지만,Android 개발할때, 정말 편한 기능 입니다. 몇가지만 공유하고자 이렇게 블로그를 씁니다. 1. findViewById 여 이제 안녕~ 안드로이드 개발을 처음 시작 하게 되면, 화면 Layout을 잡은 후 해당 View를 전부 findViewById 로 찾아 전역변수를 빼놓는 경우가 많을 겁니다.(아니신 .. 더보기 [Android][펌]안드로이드 Intent 사용법 Let's take a look at the most common implicit intents such as making a phone call, launching a web address, sending an email, etc.Phone CallPermissions:Intent:Intent callIntent = new Intent(Intent.ACTION_CALL); callIntent.setData(Uri.parse("tel:0377778888")); startActivity(callIntent);Send Email (to Phone Email Client)Compose an email in the phone email client:Intent intent = new Intent(Intent.A.. 더보기 [Android] TabLayout with ViewPager 에서 tab을 클릭 했을 때 TabLayout을 사용할 때, OnClickListener는 먹히지 않습니다. TabLayout의 자식뷰에 OnClickListener가 설정이 되지 않는 것이 원인 입니다.(만약, addTab을 이용하여 추가할 경우 해당 View에 setTag,getTag로 구분으로 줘서 이용해도 될것이다.) 대부분 ViewPager와 TabLayout을 아래와 같이 설정 할 것이다. FragmentPagerAdapter pagerAdapter = new FragmentPagerAdapter(getActivity().getSupportFragmentManager()); TabLayout tabs = (TabLayout) mRootView.findViewById(R.id.tabLayout); ViewPager view.. 더보기 [Android] Fragment transition 이용시 SomeFragment fragment = SomeFragment.newInstance(bitmap); FragmentTransaction ft = getActivity().getSupportFragmentManager().beginTransaction(); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { fragment.setSharedElementEnterTransition(new DetailsTransition()); fragment.setEnterTransition(new Fade()); fragment.setExitTransition(new Fade()); fragment.setSharedElementReturnTransition(ne.. 더보기 [Android] Tablayout이 보이지 않을 때 TabLayout을 사용하면 Tab과 ViewPager를 손쉽게 연결 시켜서 사용할 수 있습니다.정말 편하고 안정적으로 이용할 수 있는데요. 사용하다가보면 갑자기 TabLayout이 안보이는 현상이 일어납니다.레이아웃은 차지하고 있는데... indicator와 text만 보이지 않을때가 있습니다. 왜왜??? 열심히 구글링을 해보니 역시나 바로 결론이 안나오더군요. 원인은 TabLayout이 아직 로딩되지 않은 상태에서 TabLayout을 셋팅하는 함수를 호출해서 화면에 출력이 되지 않은듯 합니다. 해결책!tabLayout.post(new Runnable() { @Override public void run() { tabLayout.setupWithViewPager(mViewPager); tabLayout.. 더보기 [Android] LayoutInflater 사용시 주의점 혹시 아래와 같이 소스를 사용하시는 분! LayoutInflater layoutInflator = LayoutInflater.from(getContext()); 특히, getview 안이나 자주 호출되는 함수, 반복문에 사용할때 아래 글을 읽어주세요. 위와 같이 사용하면 아래와 같은 warning과 함께 버벅 대기 시작합니다. Skipped xx frames! The application may be doing too much work on its main thread. 이럴 경우 LayoutInflater를 호출 할때 아래와 같이 이용하세요.LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER.. 더보기 [Android] Project에 Proguard 적용 하기 ProGuard를 적용하는 방법은 쉽습니다. build.gradle 파일 에 아래 소스만 넣어주면 땡입니다. buildTypes { release { minifyEnabled true proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } minifyEnabled true 를 해주면 클래스나 변수 명이 a,b,c등으로 구분 됩니다.(runproguard true 는 에러(Could not find method runProguard() for arguments)가 발생 하므로 위 내용으로 사용 합니다.) 하!지!만! 역시 쉬운일은 없나 보더라구요.위와 같이 설정을 하면 빌드 시, waring이 좌르를 뜨거나.. 더보기 이전 1 ··· 32 33 34 35 36 37 38 ··· 59 다음