목록전체 글 (10)
이곳저곳 관심이 많아요
코로나로 격리된지 한달이 지났는데도 기침이 나아지지 않아 달리기를 못했다,,,, 하지만 얼마전에 병원에서 엑스레이를 찍어보니 이제 더이상 폐에는 문제가 없다고 하셨다. 그래서 그냥 달리기를 하기로 마음먹었다. 달리기를 좋아하긴 하지만 한동안 쉬었던 나머지 초심을 잃은 것 같다. 그래서 한창 달리기를 했을 때 적어놓았던 운동 일지를 정리하고 다시 초심을 찾아보자! 2021.09.16 30분 최고신기록 달성!! 첫날에는 30분동안 2.84km밖에 못뛰었는데 25일차인 지금 3.62km까지 늘었다. 운동신경이라곤 하나도없고 누워만 있던 나도 꾸준히 하니까 기록이 늘어난다는 것이 신기하다. 2021.09.17 이젠 달리기하는데 그렇게 숨차진 않는다. 하지만 근지구력이 부족해서 오래 달릴수록 대퇴근에 젖산이 축적..
빙고 칸 안에 적힌 문장의 참, 거짓 여부를 판별하여 완성된 빙고를 유추하는 문제. 문제 해결 순서 먼저 바로 '참' 조건인 것을 알 수 있는 칸부터 칠해보자. C2 : 문장 그대로 참. C3 : C3가 거짓이 될 조건 => 색칠이 되어있으면서 빙고줄의 일부가 아니어야한다. 하지만 C3가 거짓이 되어서 색칠이 되지 않는다면 문장의 조건을 만족하므로 참이 된다. 따라서 C3는 거짓이 될 수 없고 항상 참이다. 서로 연관성을 갖는 칸을 찾아보자. 빨간색으로 칠해진 E5와 A5의 연관성을 먼저 보자. 만약 E5가 참이면 색칠되고, A5도 색칠돼야 한다. 만약 E5가 거짓이면 색칠되지 않고, A5도 색칠돼야 한다. 즉 E5와 A5는 둘 다 색칠되거나, 둘 다 색칠되지 않아야 한다. D1과 D4도 같은 관계성을 ..
커스텀 뷰 클래스 사용 간단한 선 그리기 class MainActivity : AppCompatActivity(){ override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) //setContentView(R.layout.activity_main) //커스텀 뷰 사용 val myView:MyView = MyView(this) setContentView(myView) } class MyView: View{ constructor(context: Context):super(context){ setBackgroundColor(Color.YELLOW) } override fun onDraw(canvas: Canvas..
엑티비티에서 프래그먼트 불러오기 메인 레이아웃 파일에 프래그먼트 컨테이너를 생성한다. 메인 엑티비티에서 프래그먼트 컨테이너를 불러온다. val fragmentContainer: View = findViewById(R.id.fragmentContainerView) 프래그먼트를 불러오기 전, 프래그먼트 컨테이너에 이미 프래그먼트가 있다면 불러오지 않는다. if(savedInstanceState != null){ //이전에 저장된 프래그먼트 있으면 return //프래그먼트 추가 안해도됨 } 프래그먼트매니저를 이용해서 프래그먼트를 불러온다. supportFragmentManager.beginTransaction() .add(R.id.fragmentContainerView,FragmentA()) .addTo..
메인에서 registerForActivityResult 메소드 정의 메인에서 서브엑티비티 인텐트 생성하고 메인에서 열어주기 서브엑티비티에서 메인엑티비티 인텐트 객체 생성하고, 필요한 데이터를 Bundle로 넣어준 후, setResult로 호출 결과를 돌려줌 메인엑티비티에서 registerForActivityResult 메소드를 정의해서 startForResult 변수에 넣어준다. registerForActivityResult == 결과를 돌려받았을 때 결과를 처리하는 메소드 private val startForResult = registerForActivityResult(ActivityResultContracts.StartActivityForResult()) { result: ActivityResult ..
MainActivity에서 Intent 호출하기 인텐트 객체 생성해서 변수에 넣는다. startActivity 함수에 방금 생성한 변수를 넣는다. //(현재 액티비티, 새로 띄워줄 액티비티) var i = Intent(this,SubActivity::class.java) startActivity(i) 인텐트에 값을 넣어 전달하려면? 값 전달하기 전달해야 하는 값을 변수에 넣어주고 인텐트 객체를 생성해서 변수에 넣는다. 생성한 변수에 putExtra라는 메소드를 사용해 전달 값을 전달한다. : 패키지이름 == 앱 패키지 이름.메시지, 전달할값 startActivity 함수에 인텐트 객체를 넣어준 변수를 넣는다. var str = editText.text.toString() //(현재 액티비티, 새로 띄워줄..
RecyclerView A to Z : ViewModel 적용 X 파일 구성 MainActivity.kt activity_main.xml RecyclerView 디자인을 위한 item.xml파일 RecyclerView Adapter.kt : init 단계에서 data class에 데이터 add하기, MyViewHolder class 구현하기 RecyclerView data를 위한 data class.kt activity_main.xml 파일에 리사이클러뷰 등록 MainActivity.kt 파일에서 xml에 등록된 리사이클러뷰를 아이디로 불러온 후, 레이아웃 매니저 설정 var recyclerView:RecyclerView = findViewById(R.id.recyclerView) recyclerView..
1. MainActivity_기본 package com.example.myapplication import android.content.Intent import android.net.Uri import android.os.Bundle import android.widget.Button import androidx.appcompat.app.AppCompatActivity class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) findViewById(R.id.ca..