Android Study 111

Imagview + Textview 형태 레이아웃 만들기

- 준비물 - 1. icon_user.png (아무이미지나 상관없음) 위와 같은 형태의 레이아웃은 보통 리스트아이템 형태로 레이아웃을 만든다. 이때, 여러가지 방법중 기본방법으로 만들게 되면 아래와 같이 만들게 된다. 근데 이미지와 텍스트의 구분동작이 따로 나뉘어 있지 않다면 TextView 하나로 퉁치는 방법이 있는데, 방법은 아래와 같다. !!단 위의 방법은 이미지 사이즈를 원본 그대로 써야한다는 단점이 있다. -> 위의 방법에서 사이즈 조절 하는 방법 알아보러가기(https://85chong.tistory.com/211) - 끝 -

Android Study 2023.09.08

EditText 패스워드 <-> 일반 Text 전환 함수

* 패스워드 입력시 눈 모양 아이콘을 눌러서 패스워드를 보여주게 만들고, 패스워드를 숨기는 기능이 들어가있다. 이때 도움에 가능한 유틸 함수를 하나 공유하려고함. /* isShow - t:문자열 보여주기 , f:문자열 숨기기 */ fun transformPasswordView(isShow: Boolean, edtView: EditText) { if (isShow) { edtView.transformationMethod = HideReturnsTransformationMethod.getInstance() } else { edtView.transformationMethod = PasswordTransformationMethod.getInstance() } edtView.setSelection(edtView...

Android Study 2023.09.06

App Finish 종료 방법

* 이슈 상황 : 앱을 두번눌러 종료 시킨다 > 바로 앱을 실행한다. > 앱이 재시작 되지 않는 이슈 -> 앱을 종료후 바로 앱을 실행 하였을때, 앱이 정상 실행 되도록 하기 1. 앱 종료시 완전히 종료 되었다는 변수를(static / companion object )등의 체크 한다 companion object { var isFinishedApp = false } 2. 종료할때 finish 로 종료해준다. fun finishApop() { finish() } 3. BaseActivity 공용 베이스 액티비티가 있다면 해당 액티비티에서 또는 종료 할 액티비티에서 해당 값을 체크해서 앱이 종료가 확실시 되었을때, 해당 액티비이에서 onDestory() 호출시 System.exit 를 이용하여 완전히 종료 ..

Android Study 2023.09.04

Flexbox + Recyclerview

- 준비물 - 1. 준비된 Recyclerview , Adapter (추후 작성 예정) 2. library implementation 'com.google.android.flexbox:flexbox:3.0.0' 1. 준비된 RecyclerView 를 아래와 같이 세팅해 준다 2. 클래스단 세팅 ... val rcvMyList = findViewById(R.id.rcvMyList) rcvMyList.layoutManager = FlexboxLayoutManager(this).apply { flexWrap = FlexWrap.WRAP flexDirection = FlexDirection.ROW justifyContent = JustifyContent.FLEX_START } //myAdapter 는 준비된 사..

Android Study 2023.08.31

GlideApp 사용시 웹상에 나와있는 대부분 코드가 안될때 시도 방법

1. build.gradle(:app) kapt 사용 추가 plugins { ... id 'kotlin-kapt' } 2. build.gradl(:app) dependency 추가 dependencies { ... implementation 'com.github.bumptech.glide:glide:4.12.0' kapt 'com.github.bumptech.glide:compiler:4.12.0' ... } 3. Glide Module 파일 생성 MyGlideModule.kt (그냥 파일 생성해서 사용 가능하게끔만 해주면 끝) @GlideModule class MyGlideModule: AppGlideModule() - 위의 셋팅과 작업을 해 주어야만 아래의 코드 사용이 가능하다 (웹상 자료 중에는 세..

Android Study 2023.08.30

Android WebView 연동시키기 step-1

안드로이드 웹뷰 연동은 아래 3가지가 필요함 * 단순하게 디바이스의 기본 브라우저로 웹뷰를 보여주기만 하기 위함은 더욱 간단함 보통 웹뷰를 네이티브에 붙일때에는 아래와 같이 사용함 1. WebClient : 웹페이지 url load 의 시작, 진행, 끝 의 호출 되는 함수 연동시 사용함 2. AndroiBridge : 웹페이지와 통신할때 사용함 3. WebChromeClient : 웹페이지 파일 전송 , 웹페이지 팝업 창 연동할때 사용함 !! 웹뷰와 통신하거나 웹페이지 팝업 등의 컨트롤이 필요하지 않다면 1. 만 적용해도 됨 1-1. 기본적으로 필요한 WebClient 클래스 생성 (CustomWebview.kt) class CustomWebviewClient(val context: Context, va..

Android Study 2023.08.28

TextView 문자열, 클래스에서 원하는 부분만 스타일 변경하여 적용시키기(Feat. Kotlin)

1. strings.xml 준비 Your email : %1$s 2. color.xml 준비 #FA8428 3. textview 에 적용 val tempEmail = "aaabbb@email.com" /* 변경시킬 text string 값, html 색상 적용 */ val convetHtmlText = "${tempEmail}" /* 끼워넣을 string 가져오기 */ val tmepValue = String.format(resources.getString(R.string.test_content), convetHtmlText) /* Html string 형식 인식되게 변환 */ val spannedText = HtmlCompat.fromHtml(tmepValue, HtmlCompat.FROM_HTML_M..

Android Study 2023.08.17