Android 146

Glide

*Glide Document: https://bumptech.github.io/glide/ 버전이 올라가면서 예전에 쓰던거에서 사용법이 약간 바뀌었다.implementation 'com.github.bumptech.glide:glide:4.8.0' annotationProcessor 'com.github.bumptech.glide:compiler:4.8.0' implementation 'jp.wasabeef:glide-transformations:4.0.1'(세번째꺼는 Glide확장판? 같은 거) 1.PlaceholderGlide.with(this) .load("경로") .apply(RequestOptions().placeholder(R.drawable.s1)) .into(main_iv) 2.Center..

Android/Kotlin 2018.11.24

RecyclerView - onClick구현

//각각의 아이템을 바인딩한다 public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) { CustomViewHolder view = (CustomViewHolder) holder; view.nameTv.setText( mItems.get(position).getName() ); }onBindViewHolder를 아래와 같이 바꾸어준다. //각각의 아이템을 바인딩한다 public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) { final TestItem data = mItems.get(position); CustomVie..

Class - 데이터클래스

data class Student( var grade : Int, var name : String, var gender : String, var birthday : String )중괄호 대신 그냥 괄호사용 fun main(args: Array){ var s1 = Student(1, "선필", "남", "1989-03-22") var s2 = Student(1, "선필", "남", "1989-03-22") var s3 = s1.copy() println(s3.toString()) s3.grade = 3 //setter println(s3.grade) //getter println(s3.hashCode()) //hashCode println(s1.equals(s1)) //데이터클래스 내부의 값이 같은지 판별..

Android/Kotlin 2018.11.20

Class - 상속

open class Human{ open var name: String = "선필" open var country: String = "한국" open var gender: String = "남" fun printHumanInfo(){ println("출력: $name, $country, $gender") } }다른애들이 본인을 overide하는걸 허가하려면 open을 붙여줘야 한다. class American: Human() { override var country : String = "미국" override var name : String = "토니 스타크" }Java였으면 Class Ameraican extends Human 형태인데 코틀린은 이렇게 한다. fun main(args: Array){ v..

Android/Kotlin 2018.11.20

RecyclerView(GridLayout)

1. Gradleimplementation 'com.android.support:recyclerview-v7:28.0.0'저 뒤에 숫자는 자기꺼랑 버전을 맞춰준다. 2. Layout RecyclerView랑 안에 들어갈 layout하나씩 만들어준다. 3. Adaptorclass MainRecyclerViewAdaptor: RecyclerView.Adapter(){ //각각의 아이템의 디자인레이아웃을 불러온다 override fun onCreateViewHolder(p0: ViewGroup, p1: Int): RecyclerView.ViewHolder { TODO("not implemented") //To change body of created functions use File | Settings | F..

Android/Kotlin 2018.11.19

[Firebase] Cloud Firestore OR과 LIKE구현하기

Cloud Firestore OR과 LIKE를 제공하지 않는다. 직접 코드로 구현해야 한다. 1.검색//검색 EditText read_database_activity_edittext.addTextChangedListener(object : TextWatcher{ override fun afterTextChanged(p0: Editable?) { searchList(p0.toString()) } override fun beforeTextChanged(p0: CharSequence?, p1: Int, p2: Int, p3: Int) { } override fun onTextChanged(p0: CharSequence?, p1: Int, p2: Int, p3: Int) { } }) 2.LIKE fun sear..

Android/Firebase 2018.08.02

[Firebase] CloudStore 복합쿼리

원래 없었는데 CloudStore로 바뀌면서 Join같은 게 생겼다.스피너로 도시와 나이를 선택하면 동시에 적용되서 검색되도록 하는 코드. //도시선택 스피너 recyclerview_read_database_spinner_city.onItemSelectedListener = object : AdapterView.OnItemSelectedListener{ override fun onNothingSelected(p0: AdapterView?) { } override fun onItemSelected(p0: AdapterView?, p1: View?, p2: Int, p3: Long) { city = p0!!.getItemAtPosition(p2) as String listBySpinner() } } //나이..

Android/Firebase 2018.08.01

[Firebase] Cloud Firestore 데이터입력

1. 문서의 Android시작하기 가서 gradle 찾아 입력implementation 'com.google.firebase:firebase-firestore:15.0.0' 2. 데이터 입력하는 부분document()안에 아무것도 안 입력하면 자동으로 문서제목 생성(ASDF3aSDF!#F 이런거..)문서제목을 지정하고 싶을 경우 0자리에 문서제목 입력fun createData(){ var userDTO = UserDTO(editText_database_name.text.toString(), editText_database_age.text.toString().toInt(), editText_database_city.text.toString()) //document안에("0") 직접 문서제목 입력 번호가 문..

Android/Firebase 2018.07.30

[Firebase] 탈퇴하기

btn_pw_change.setOnClickListener{ var editTextNewPassword = EditText(this) editTextNewPassword.transformationMethod = PasswordTransformationMethod.getInstance() var alertDialog = AlertDialog.Builder(this) alertDialog.setTitle("패스워드 변경") alertDialog.setMessage("변경하고 싶은 패스워드를 입력하세요") alertDialog.setView(editTextNewPassword) alertDialog.setPositiveButton("변경", {dialogInterface, i -> changePassword(..

Android/Firebase 2018.07.23

[Firebase] Facebook로그인

1. Facebook개발자센터가서 새앱 만들고 안드로이드 선택한 후에 적혀있는 것을 Gradle에 넣어준다 2. Single sign on. 이거 예 하면 한번 로그인한 계정을 자동으로 인증해줌. 3. 나머지도 적절히 입력하고.. MainActivity.ktvar callbackManager: CallbackManager? = null override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) //페이스북(로그인이 완료되었을때 토큰을 받는 부분) callbackManager = CallbackManager.Factory.create() ...

Android/Firebase 2018.07.23

[Firebase] 구글 로그인

1. 파이어베이스 콘솔의 문서로 가서 인증에 필요한 라이브러리를 Gradle에 입력한다.버전 숫자가 안맞으면 에러가 날 수 있다. 같은 회사들 꺼는 버전을 똑같이 맞춰줘야 한다. 2.xml에서 button대신 이렇게 입력하면 자동으로 구글버튼이 된다. 이부분 에러났을때 gradle버전을 11.6.0이상으로 바꾸니까 정상실행 되었음GoogleSignIn.getClient(this, gso); 3.class MainActivity : AppCompatActivity() { var authStateListener: FirebaseAuth.AuthStateListener? = null var googleSignInClient: GoogleSignInClient? = null override fun onCreat..

Android/Firebase 2018.07.22