Android Studio에서 UML 그래프 생성 https://json8.tistory.com/79 [Android] Android Studio simpleUML 사용법 1. simpleUML 개요 클래스, 종속성, 패키지 및 시퀀스 다이어그램을 지원합니다. 이미 작성된 소스 분석에 도움이 됩니다. 2. simpleUML 설치 - File -> Settings 진입 - Plugins -> Marketplace 탭 선택 -.. json8.tistory.com Android/Android 일반 2021.08.27
IAP결제 시 onProductPurchased가 첫번째 시도에 호출되지 않을 때 override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { if (!bp.handleActivityResult(requestCode, resultCode, data)) super.onActivityResult(requestCode, resultCode, data) } 참고: https://sunpil.tistory.com/m/188?category=771900 Android/Android 일반 2019.08.13
2019 인앱결제(IAP, In app purchase) Build.gradle(Project)buildscript { ext.kotlin_version = '1.3.11' repositories { google() jcenter() mavenCentral() } Build.gradle(Module)implementation 'com.anjlab.android.iab.v3:library:1.0.44' AndroidMenifest.xml PlayConsole1. App을 하나 등록2. 출시관리 > 서비스 및 API 가서 키를 저장해놓음3. 앱정보 > 인앱상품에서 상품등록 KeyInfo.kt//인앱결제 라이센스 키 const val INAPP_PURCHAGE_KET = "API키" 키들은 따로 모아서 관리 IapTestActivity.ktpackage com.em.. Android/Android 일반 2019.07.25
파란색 구글로그인 버튼 (Google Login Dark Version) Gradleimplementation 'com.shobhitpuri.custombuttons:google-signin:1.0.0' XML 참고: https://github.com/shobhitpuri/custom-google-signin-button Android/Android 일반 2019.06.13
dimen에서 숫자만 가져오기 In my dimens.xml I have48dpIn code If I doint valueInPixels = (int) getResources().getDimension(R.dimen.test)this will return 72 which as docs state is multiplied by density of current phone (48dp x 1.5 in my case)exactly as docs state :Retrieve a dimensional for a particular resource ID. Unit conversions are based on the current DisplayMetrics associated with the resources.so if you want exact .. Android/Android 일반 2019.05.28
코딩으로 뷰의 크기확인 및 수정 코딩으로 뷰의 크기 보기 및 수정이 예시에서는 스크롤뷰의 크기를 알고 내부의 뷰(topConstraint)의 크기를 조절 onCreate에서 크기를 구하면 0으로 나온다.아직 뷰가 그려지지 않았기 때문이다. OnGlobalLayoutListenerGlobal Layout의 상태나 ViewTree 상태가 변화했을때 불리는 리스너이다.이 리스너를 사용하면 View가 전부 그려진 후 호출되므로 View의 크기를 구할수 있다 리스너 선언val mGlobalLayoutListener = ViewTreeObserver.OnGlobalLayoutListener { val scHeight = scrollView.height val supportBtn = supportBtn.height // Apply the chang.. Android/Android 일반 2019.05.20
ViewPager양쪽에 여백 ViewPager양쪽에 여백 viewpager.run{ clipToPadding =false setPadding(300, 0, 300, 0) pageMargin = 100 offscreenPageLimit = adapter.count setAdapter(this.adapter) } Android/Android 일반 2019.05.15
DisplayMetrics.density DisplayMetrics.density resolutionresolution은 해상도를 의미합니다. 예로 들면 320*480, 1080*1920등과 같은 디스플레이의 가로, 세로 픽셀 수를 의미합니다. density안드로이드에서 getResources().getDisplayMetrics().density로 구할 수 있는 density는 디스플레이의 논리적인 density(밀도)를 의미합니다. 이것은 Density Independent Pixel(DIP, 밀도와 무관한 픽셀) 단위에 쓰이는 곱하기 인자(scaling factor)입니다. 1 DIP는 대략 160 dpi(예를 들어 가로1.5인치 세로 2인치의 240x320해상도를 가지는 스크린) 스크린에서 1픽셀에 해당하는데 시스템 디스플레이의 기준이 됩.. Android/Android 일반 2019.05.15
TabLayout TabLayout androidx.viewpager.widget.ViewPagercom.google.android.material.tabs.TabLayout dot로 하는 방법 참고: https://stackoverflow.com/questions/38459309/how-do-you-create-an-android-view-pager-with-a-dots-indicator Android/Android 일반 2019.05.14
간단한 Animation Library Android View AnimationsGithub: https://github.com/daimajia/AndroidViewAnimations Gradle//Animation implementation 'com.daimajia.easing:library:2.0@aar' implementation 'com.daimajia.androidanimations:library:2.3@aar' Android/Android 일반 2019.05.08
NestedScrollView NestedScrollViewscrollview안에 또다른 스크롤을 넣을 때 사용. ScrollView안에 RecyclerView를 넣을때 부분적으로 스크롤이 생기지 않고 전체적으로 스크롤이 생겨야 할 때 사용. Android/Android 일반 2019.05.07
Fragment에서 Intent사용 Fragment에서 Intent사용fragment는 Context타입이 아니므로, 부모 activity를 호출해서 사용. activity?.let{ val iT = Intent(context, NumberActivity::class.java) startActivity(iT) } 참고: https://stackoverflow.com/questions/53355786/kotlin-open-new-activity-inside-of-a-fragment Android/Android 일반 2019.05.07
Gradle에서 버전 번수로 선언해서 사용하기 Gradle에서 버전 번수로 선언해서 사용하기 Gradle(Module)apply plugin: 'com.android.application' apply plugin: 'kotlin-android' apply plugin: 'kotlin-android-extensions' android { compileSdkVersion 28 defaultConfig { applicationId "com.lipnus.android.numpicker" minSdkVersion 19 targetSdkVersion 28 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } buildTy.. Android/Android 일반 2019.04.30
[Gradle] Debug와 Release 자동으로 구분하기 참고: https://gun0912.tistory.com/33 buildTypes { debug { //debug일때 resValue "string","testStr", "aaaa" } release { //release일때 resValue "string","testStr", "bbbb" proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } Android/Android 일반 2019.04.29
EditText의 핸들(Handle)을 이미지로 바꾸기 전체 EditText의 Handle색은 style.xml의@color/~ @color/~위의 색을 조정해주면 된다. 특정 EditText의 Handle색만 바꾸는게 잘 안됨.이미지로 교체하는 방법을 사용@drawable/raindrop Android/Android 일반 2019.04.24
EditText 부분 별 색 설정하기 EditText 부분 별 색 설정하기 변경항목지정항목설명colorControlActivated손끝으로 터치되어 있는 부분. text selection handle라고 부른다고 한다colorControlNormal포커스 되어있지 않은 경우의 밑줄 부분colorControlActivated포커스시의 밑줄 부분. Tint 되어있어 지정한 색보다 약간 투명이 적용되어있고, 길게 누르면 지정한 색이된다.android:textColorHighlight텍스트 선택색android:textColorHint입력전의 Hint (포커스 Holder)android:textColor텍스트 색android:textCursorDrawable커서 색. drawable 지정되지만, 색을 설정하는것도 된다 참고: http://pluu.g.. Android/Android 일반 2019.04.23
Bottom Navigation과 ViewPager 연결하기 Bottom Navigation과 ViewPager 연결하기 viewpager의 상태를 bottom navagation에 반영viewpager.onPageChangeListener { onPageSelected { navigation.menu.getItem(it).setChecked(true) } }document: https://developer.android.com/reference/android/support/v4/view/ViewPager.OnPageChangeListener *변경된 함수viewpager?.addOnPageChangeListener(object : ViewPager.OnPageChangeListener { override fun onPageScrollStateChanged(sta.. Android/Android 일반 2019.04.23