Android36 Android recyclerView, adapter 리사이클뷰를 위한 사전작업 1.DB 테이블에 데이터가 있어야함. 2.하나의 행을 보여줄 XML을 작성 / 리사이클뷰를 보여줄 XML을 작성 리사이클뷰 원리 1.DB에서 가져온 하나의 행 정보를 기반으로 만든 XML을 2.어댑터클래스를 만들어 증식시킨다?(여러개로 만든다는것) 3.그리고 Activity에서 리사이클뷰로 보여주는 코드를 작성. # 이것을 응용하면 사진앨범 같이 다차원의 배치도 가능함 adapter 코드 package com.leopard4.contactapp.adapter; // 1. RecyclerView.Adapter 를 상속받는다. // 2. 상속받은 클래스가 abstract 이므로, unimplemented method 오버라이드! import android.content.Contex.. 2023. 2. 1. Android SQLite3 , RecyclerView , SQLiteOpenHelper 클래스를 상속 , 메뉴 아이콘 이미지를 벡터 이미지로 만드는 방법, CardView 예시 1. 여기서 주의깊게 봐야할것은 db에 저장하기 위해 contact 클래스를 만들었다는 것.(테이블과비슷) 2. db핸들러 생성시 SQLiteOpenHelper클래스를 상속받는것 그리고 생성자를 만들때 db이름과 버전, 테이블컬럼 관련 상수를 util로 뺏다는것 3. 반드시 기억 new는 힙에 생성된다는것 4. 데이터베이스 부분만 확인하고 넘어가도됨 main package com.leopard4.contactapp; import androidx.appcompat.app.AppCompatActivity; import androidx.recyclerview.widget.RecyclerView; import android.content.Intent; import android.os.Bundle; import .. 2023. 1. 31. Android [로그인앱] main package com.leopard4.userloginapp; import androidx.appcompat.app.AppCompatActivity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditText; // 이메일 진위성 검사를 위한 클래스 import android.util.Patterns; import android.widget.Toast; public class MainActivity extends AppCompatActivity { EditText editEmail; EditText .. 2023. 1. 31. Android shared preference(앱 내에 토큰,자동로그인 등 데이터를 저장) 두가지 방법이 있다. shared preference -> 간단히 저장할때 sqlite -> DB => 앱을 삭제하면, 같이 삭제된다. Main 코드 package com.leopard4.saveapp; import androidx.appcompat.app.AppCompatActivity; import android.content.SharedPreferences; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditText; public class MainActivity extends AppCompatActivity { EditText editSentence; Bu.. 2023. 1. 31. Android 단방향 데이터 전달, 양방향 데이터 전달 단방향 데이터 전달(second 코드를 먼저보여줌)나이에 + 10을 해서 보여줌 Main 화면button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { String strName = editName.getText().toString().trim(); String strAge = editAge.getText().toString().trim(); int age = Integer.parseInt(strAge); // SecondActivity로 화면 전환 // 인텐트를 만든다! // 인텐트란, 어떤 액티비티가.. 2023. 1. 30. Android Activity간 화면전환(Life Cycle), intent 화면 전환시 실행되는 함수 Log 확인 Create [처음실행시] Start Resume Backpressed [백버튼눌럿을시] Pause Stop Destroy[완전히 사라질시] Restart[사용할일이 거의없음] 자동으로 XML도 만들어줌 첫번째 액티비티 전체코드 package com.leopard4.lifecycle; import androidx.appcompat.app.AppCompatActivity; import android.content.Intent; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.Button; public class MainActivity ext.. 2023. 1. 30. Android Studio CountDownTimer, Flag, (ABS,Interface)특성, 메소드안의 메소드를 다른메소드에서 호출, Log.i, setText(""+int) !! 기억할것 !! 기본 템플릿에서 멤버변수는 보라색 abs추상클래스, 인터페이스 는 내장된 멤버메소드를 반드시 사용해야만 한다. Flag 변수란 특정 동작을 수행할지 말지 결정하는 (보통 1비트인) 변수 ( 보통 is어쩌고 로 시작) 클래스의 메소드 안에 메소드는 스택 영역에 생성되므로 재사용이 안된다. setText()는 String 만 가능하기 때문에 "" + 숫자 한다 (가장쉽게 String 으로 변환하는 방법) 메인 코드 전체 package com.leopard4.timer; import androidx.appcompat.app.AlertDialog; import androidx.appcompat.app.AppCompatActivity; import android.annotation.Suppre.. 2023. 1. 27. Android Studio QuizApp, progressBar, Alert, strings.xml 다국어 처리, 반복되는 작업은 유지보수를 위해 메소드로 만들기, 객체들을 담은 리스트의 활용, IndexOutOfBounds를 방지하기, @string/txtQuiz (매핑변수 strings.xml 과 연결, 다국어 처리를 위한 소프트코딩) 이 파일을 번역본으로 여러개 만들어놓으면 다국어 처리가 가능하다. (업체에 맡길수도 있다) 디폴트 언어를 영어로 설정가능 예시) strings_en.xml (자세한 사항은 메뉴얼을 참조) Main 전체 코드 package com.leopard4.quizapp; import androidx.appcompat.app.AlertDialog; import androidx.appcompat.app.AppCompatActivity; import android.content.DialogInterface; import android.os.Bundle; import android.view.View; import and.. 2023. 1. 27. Android Studio Double.valueOf(strPercent).doubleValue() / todo package com.leopard4.calculator; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.TextView; import android.widget.Toast; public class MainActivity extends AppCompatActivity { TextView txtResult; Button btnResult; EditText editPercent; EditText editNumber; @Overr.. 2023. 1. 26. Android Studio EditText.getText().toString().trim() / 유효성체크 / 로그처리 / Toast, Snackbar package com.leopard4.uitest1; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.TextView; import android.widget.Toast; import com.google.android.material.snackbar.Snackbar; import com.google.android.material.textfield.TextInputEditText; p.. 2023. 1. 26. Android studio vertical, horizontal , textView, imageView 안드로이드 법칙 파일명 소문자 하이픈, 공백 X ( _는 가능) png or 벡터image 사용한 속성 scale (이미지크기,정렬) layout_gravity 위치잡기 layout_margin 공간주기 color 사용한 palatte vertical, horizontal , textView, imageView 2023. 1. 26. Android studio 주사위 굴리기, 파일구성 기본 구성 manifests 폴더의 activity 부분이 앱실행시 실행되는부분 res 리소스폴더 R이라고 씀 이미지 파일은 res폴더의 drawable 폴더에 넣어놓고 사운드 파일은 res폴더에 rew폴더를 만들어서 보관 MainActivity 기능구현 코드작성부분 build.gradle sdk 버전설정 앱버전설정 dependencies에 사용할 라이브러리 (pip와 비슷한것) 레이아웃디자인 id값으로 기능구현 연결함 기능부분 실행시 에뮬레이터의 모습 잘되던 앱이 갑자기 안된다면 build-tools 부분을 업데이트 하면됨 사용할 api 레벨 (전부하면 용량이 커져서 안됨) 테스트 환경에서는 sdk Platform 33 하나만 설정하였다. minsdk 21은 최소 21버전이상이면 된다는것. image .. 2023. 1. 26. 이전 1 2 3 다음