본문 바로가기
반응형

Android90

[Kotlin] Android SweetAlertDialog 사용하기 SweetAlertDialog 한..5년전에 많이 쓰던건데 아직도 있네요. 버전업은 안되는것 같지만 동작은 잘 됩니다. 이것만한 Dialog Library 가 없네요. 만들어주신분 감사~ Dependency 추가 build.gradle 파일에 dependencies { implementation 'com.github.f0ris.sweetalert:library:1.6.2' } 그리고 우측 상단에 Sync Now 클릭. 사용 Activity 에서 SweetAlertDialog(this, SweetAlertDialog.SUCCESS_TYPE) .setTitleText("Hello~") .setContentText("Bryan! Good-Night") .setConfirmText("GoodNight") .se.. 2023. 9. 1.
[Kotlin] 안드로이드 Custom Dialog Dialog Layout 생성 res/layout 에서 우클릭 파일이름은 custom_common_dialog.xml 참고: 파일명을 이렇게 만들면 바인딩은 CustomCommonDialogBinding 이 됩니다. 이런 모양이 생깁니다. Dialog Class Dialog 를 상속받은 class 를 생성합니다. CommonDialog.kt import android.app.Dialog import android.content.Context import android.os.Bundle import com.example.solbarapp.databinding.CustomCommonDialogBinding class CommonDialog(context: Context, val title: String, v.. 2023. 9. 1.
[Kotlin] Android ListView ItemClick Listener ListView 가 아래와 같이 있을 때, viewBinding 을 사용했다면 binding.listviewtestListview 로 쓸수있습니다. binding 이 아니면 findViewById 로 listview 를 가져오면됩니다. binding.listviewtestListview.setOnItemClickListener { parent, view, position, id -> // do something.. } 이전 글에서 ListView 를 만들었을 때, 아래와 같이 사용할 수 있습니다. 아래는 LiveData 를 조회했기 때문이고요. binding.listviewtestListview.setOnItemClickListener { parent, view, position, id -> val it.. 2023. 8. 31.
[Kotlin] Android ROOM + LiveData + ListView Android ROOM LiveData ListView ROOM 을 사용해서 LiveData 를 조회하고 ListView 에 Adapter 로 바인딩 해서, 데이터가 수정되면 ListView 에 바로 적용되는 것을 확인해보겠습니다. 실제로 앱을 만들면서 하시려면 이전 글부터 하시면 됩니다. 2023.08.24 - [Android] - [Kotlin] 코틀린 Room Database 사용하기. CRUD Retrofit2 로 데이터 조회해서 Room db에 데이터 넣으려면 아래 글을.. 2023.08.24 - [Android] - [Kotlin] 코틀린 안드로이드 ROOM (database) 사용해보기 Activty 생성 적당한 이름의 Activity 를 생성합니다. 그리고 Binding 사용하도록 코드 수.. 2023. 8. 31.
[Kotlin] 코틀린 Room Database 사용하기. CRUD Android Kotlin ROOM build.gradle 아래 내용 추가 plugins { id 'kotlin-kapt' } dependencies { def room_version = "2.5.2" implementation "androidx.room:room-runtime:${room_version}" implementation "androidx.room:room-ktx:${room_version}" kapt "androidx.room:room-compiler:${room_version}" } sync_now 클릭 Entity (Table) data class Person.kt 데이터 클래스 import androidx.room.ColumnInfo import androidx.room.Entity .. 2023. 8. 24.
[Kotlin] 코틀린 안드로이드 ROOM (database) 사용해보기 Retrofit2 로 받아온 데이터를 ROOM 을 사용해 Database 에 넣기 Retrofit2 에서 사용한 data class 를 ROOM 에서도 사용하는 예제입니다. Json Serializer 겸, Entity 기본적인 ROOM 사용법만 알고 싶다면 아래 글을 확인하시게 좋습니다. 2023.08.24 - [Android] - [Kotlin] 코틀린 Room Database 사용하기. CRUD println("From Database ${publicHoliday.engName} : ${publicHoliday.locale}") } } 결과 2023. 8. 24.
[Kotlin] Background Thread (ThreadExecutor 사용하기) UI Thread 가 아닌 Background Thread 에서 작업하기 위해서 ThreadExecutor 를 생성 백그라운드 스레드를 사용하는 이유는 메인(UI) 스레드에서 긴 작업을 수행하면 앱이 응답하지 않거나 끊어지는 문제를 피하기 위해서입니다 class HttpActivity : AppCompatActivity() { val executor: ExecutorService = Executors.newSingleThreadExecutor() } 버튼 클릭하면 실행 하도록, onCreate 안에 click event 작성 binding.httpSendButton.setOnClickListener { executor.execute{ val url = binding.httpUrlEditText.text... 2023. 8. 18.
[Kotlin] RecyclerView 사용하기 RecyclerView 아래 두가지 방법에 대해서 예제를 들어보겠습니다. 1. findViewById 2. viewBinding 우선 Activity 를 생성합니다. class RecyclerViewTestActivity : AppCompatActivity() { private lateinit var binding: ActivityRecyclerViewTestBinding override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) binding = ActivityRecyclerViewTestBinding.inflate(layoutInflater) setContentView(binding.root) } } l.. 2023. 8. 17.
[Kotlin] SQLite 에서 statement ? parameter 사용하기 이전 글에서 sql 문을 아래와 같이 만들어서 사용했다면, fun addData(tableName: String, name: String, age: Int, mobile: String){ val sql = "insert into $tableName (name, age, mobile) values " + "('$name', $age, '$mobile')" database?.let{ it.execSQL(sql) logView("Table $tableName Data Inserted") } ?: run { logView("database is null!") } } value 부분을 이렇게 만들면 sql injection에 취약하게 됩니다. : ('$name', $age, '$mobile') 그래서 다음과 같이.. 2023. 8. 16.
[Android]Kotlin - WebView 사용하기 AndroidManifest.xml 에서 다음 권한을 추가해줍니다. Activity 를 하나 생성합니다. layout 파일에서 WebView 를 검색해서 추가합니다. 또는 직접 코드 추가. 아래는 Activity 의 코드입니다. class WebViewActivity : AppCompatActivity() { private lateinit var binding: ActivityWebViewBinding override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) binding = ActivityWebViewBinding.inflate(layoutInflater) setContentView(binding.roo.. 2023. 8. 16.
728x90
반응형