1. 그레들에서 라이브러리를 불러옵니다. implementation 'androidx.room:room-runtime:2.2.5' kapt 'android.arch.persistence.room:compiler:2.2.4' 2. room을 생성할 추상클래스를 만든다. import android.content.Context import androidx.room.Database import androidx.room.Room import androidx.room.RoomDatabase import com.connple.weat.model.restaurantEntity.RestaurantDAO import com.connple.weat.model.restaurantEntity.RestaurantEntity @D..
분류 전체보기
퍼옴 TextView 에서 밑줄을 긋기 위해서 검색을해서 (제가)알아낸 3가지 방법입니다. 1. strings.xml 에서 간단하게 HTML Tag 를 이용하는 방법. // strings.xml 작성 I can't find pairing button // Activity 에서 작성 TextView.setText(Html.fromHtml(getResources.getString(R.string.can_not_find_pairing_button))); 2. Activity 에서 setPaintFlags() 함수로 밑줄 긋는 방법. TextView.setPaintFlags(TextView.getPaintFlags() | Paint.UNDERLINE_TEXT_FLAG); 3. Activity 에서 Spannab..
지도를 띄우고 마커를 붙이는 정도까지 만들었다. 결국 프로젝트에서 카카오맵을 안쓰게 되어 소스코드가 아까워서 저장한다. package com.connple.weat.map import android.Manifest import android.content.pm.PackageManager import android.os.Bundle import android.view.View import android.widget.Toast import androidx.appcompat.app.AppCompatActivity import androidx.core.app.ActivityCompat import androidx.core.content.ContextCompat import com.connple.weat.R im..
1. retrofit2와 okhttp3, gson 빌더를 싱글톤으로 생성한다 빌더를 만드는 것은 한 번 만들고 다시 코드를 적을일 없으니 저장해놓고 쓰도록 하자. import com.connple.weat.api.model.Notification import com.connple.weat.api.model.User import okhttp3.MultipartBody import retrofit2.Call import retrofit2.http.* object MyApp { private lateinit var retrofit: Retrofit private val signedIn get() = authToken != null fun update( baseUrl: String? = null, authTok..
아래와 같은 코드에서, lateinit var test: String override fun onCreate(saveInstanceState: Bundle?){ super.onCreate(saveInstanceState) setTest("안녕하세요!") System.out.println(test) } fun setTest(text: String) { Handler().postdelayed({ test = text }, 1000) } lateinit은 게으른, 느린 초기화를 의미한다. 느린 초기화란 메모리를 아끼기 위해서 변수가 필요할 때 초기화 하는 것을 의미한다. 하지만 이 변수를 초기화 하지 않고 사용한다면 초기화 에러가 뜬다. 위의 코드를 보면 1000 밀리세컨드가 지나간 다음에 test가 초기화 ..
android { compileSdkVersion 29 buildToolsVersion "29.0.3" defaultConfig { applicationId "com.connple.weat" minSdkVersion 26 targetSdkVersion 29 versionCode 3 versionName "3" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } buildTypes { release { // 여기 // false -> true minifyEnabled true // 여기 proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-ru..