Android36 Android [메모앱] Retrofit2 기본설정, 회원가입, 로그인 gradle dependencies { implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.retrofit2:converter-gson:2.9.0' implementation("com.squareup.okhttp3:logging-interceptor:4.9.0") } UserApi (인터페이스) package com.leopard4.memoapp.api; import com.leopard4.memoapp.model.User; import com.leopard4.memoapp.model.UserRes; import retrofit2.Call; import retrofit2.http.Body; import re.. 2023. 2. 9. Android [유튜브API동영상리스트불러오는앱] 페이징처리, url파싱, 카드뷰 선택시 웹브라우저 실행 살펴보아야할부분 url파싱 페이징처리 ( addNetworkData() 함수) 메인액티비티.xml video_row.xml 기능추가 ( 카드뷰 선택시 웹브라우저 실행(유튜브 앱이있다면 앱이 실행됨), 썸네일 선택시 썸네일확대) 메인액티비티 package com.leopard4.youtubeapiapp; import androidx.annotation.NonNull; import androidx.appcompat.app.AppCompatActivity; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; import android.content.Intent; impor.. 2023. 2. 8. Android 유튜브 API 썸네일 이미지를 안드로이드에서 열어보기 HTTP요청 주소 뒤에 개인토큰을 포함한 쿼리스트링을 추가해준다. 선택적매개변수(해도되고 안해도된다는뜻) 유튜브 API는 자체적 respon도 제공함 2023. 2. 7. Android [공유인텐트] 휴대폰에 깔려있는 공유인텐트를 사용할수있다. Intent intent = new Intent(Intent.ACTION_PICK); 이런식으로 치면 PICK 으로 되어있는 액티비티들이 리스트로 뜬다 사용자는 선택할수있다. MainActivity 공유 인텐트 사용 예시들 package com.leopard4.intentapp; import androidx.appcompat.app.AppCompatActivity; import android.content.Intent; import android.net.Uri; import android.os.Bundle; import android.provider.ContactsContract; import android.view.View; import android.wid.. 2023. 2. 7. Android [프로필 리사이클앱] 이미지 레이아웃 배치 / 선택한 이미지 크게보기 XML코드 이 아래부터는 전혀다른 코드 봐야할부분 1. 스크롤을 아래로 내리면 일부사진만 불러오면서 디폴트 이미지가 보임 (네트웤자원을 아끼기위함, Glide의 기능) 2. 이미지를 선택하면 새로운액티비티가 열리면서 확대된 이미지를 불러옴 (메인액티비티로부터 받아온 이미지) MainActivity package com.blockent.simpleimgapp; import androidx.appcompat.app.AppCompatActivity; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; import android.app.DownloadManager; impo.. 2023. 2. 7. Android 이미지 처리를 위한 Glide 라이브러리 사용법 MainActivity package com.leopard4.glide; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.widget.ImageView; import com.bumptech.glide.Glide; public class MainActivity extends AppCompatActivity { ImageView imageView1; ImageView imageView2; ImageView imageView3; final String URL1 = "https://block-yh-test2.s3.ap-northeast-2.amazonaws.com/2023-01-12T15_46_28... 2023. 2. 7. Android [포스팅앱] 중복코드 함수화 / 액티비티별 액션바의 구성 / 양방향 객체 전달 / {}안의 [] JSON Volley로 GET해서 인덱싱 / 프로그래스바 보이기,숨기기 MainActivity package com.leopard4.postinglist; import androidx.activity.result.ActivityResult; import androidx.activity.result.ActivityResultCallback; import androidx.activity.result.ActivityResultLauncher; import androidx.activity.result.contract.ActivityResultContracts; import androidx.annotation.NonNull; import androidx.appcompat.app.AppCompatActivity; import androidx.recyclerview.widget.Line.. 2023. 2. 7. Android [회사직원관리앱] 양방향통신 launcher가 안될때/ 액션바 메뉴/ fab / 네트워크 프로그래스바 리사이클뷰 어댑터를 이용한 양방향 통신시 context는 현재 호출되고있는 MainActivity 인데 MainActivity 의 디폴트 멤버변수인 launcher가 접근이 안됨 따라서, 어댑터에서 접근할 멤버변수를 public 으로 바꾼뒤 어댑터로 파일에서 ((MainActivity)) 로 캐스팅을 하고 . 을해보면 접근 가능한 멤버변수와 메소드의 리스트를 확인할수있다. 액티비티 별로 액션바를 만드는방법 MainActivity package com.leopard4.employeeapp; import androidx.activity.result.ActivityResult; import androidx.activity.result.ActivityResultCallback; import androidx.ac.. 2023. 2. 6. Android 네트워크 통신 안드로이드에서 네트워크 통신 에뮬레이터 세팅 라이브러리(자체적으로 쓰레드 프로그래밍이 되어있다) - Volley https://google.github.io/volley/ - Retrofit2 Multi Processing - 소프트웨어 앱 단위! cpu가 일을 나눠서 처리 - 앱을 동시에 여러개 실행 가능 Multi Threding - 앱 하나에서도 여러가지 일을 나눠서 처리 테스트용 JSON 데이터를 보내줄 사이트 https://jsonplaceholder.typicode.com manifests 파일 res/xml/network_security_config.xml *.typicode.com Gadle Scripts implementation 'com.android.volley:volley:1.2.1.. 2023. 2. 3. Android [메모앱/서치/리사이클] maxline, ellipsize, addTextChangedListener, github 올리기 DB 서치 recyclerView 처리 AlertDialog Serializable (객체를 인텐트로 전달하고자 할때사용하는것) 디자인 속성에 maxline 2 ( 2줄로 보여줘) ellipsize end ( 줄을 초과하면 ...으로 표시) cardConerRadius (라운딩) cardElevaion (입체감주기) main 액티비티 package com.leopard4.memorecycleapp; import androidx.appcompat.app.AppCompatActivity; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; import android.co.. 2023. 2. 3. Android [주소록앱 1차 수정본] recycleView의 Adatpter에서, 새로운 activity를 실행하는 방법 / recycleView에서, 몇번째 행을 눌렀는지 알수있는 Adatpter의 함수(a.getAdapterPostion()) / 다른 activity로 데이터 전.. 체크할 부분 1.리사이클러뷰에 어댑터에서, 새로운 액티비티를 실행하는 방법 2.리사이클러 뷰에서, 몇번째 행을 눌렀는지 알수 있는, 어댑터의 함수 a.getAdapterPostion() 3. 다른 액티비티로 데이터 전달 시, 클래스의 객체를 전달하는 방법 4. onResume 사용하기 문제) 기존 주소록앱에 변경 사항 발생 리사이클뷰의 카드를 눌렀을때 수정화면으로 이동구현 인텐트로 데이터를 넘겨줄 것인데 여긴 액티비티가 아니고 어댑터이므로 아래와 같이 어댑터 생성자부분에서 context 부분을 context 변수로 처리한다. Intent intent = new Intent(context, EditActivity.class); context 부분이 MainActivity.this로 되어있음을 확인 때문에 .. 2023. 2. 1. Android [메모앱] recyclerView 포인트 1.클래스는 무조건 model 패키지에 만들기 (유지보수를위함) 2.앱을누르면 매니페스트 action 부분이 실행된다는것 3. recycleView 를 사용시 워크플로우(작업흐름) 1) "보여줄행"_row.xml 파일 생성 (리니어로 되있는지/ width / height가 적정하게 되있는지 확인) 2) 데이터를 저장할 ArrayList 나 List 에서 한행씩 보여줄 데이터만 액세스를 할수있는지 확인 3) Adapter 폴더에 Adapter 클래스를 생성 4.리니어 레이아웃을 사용해야한다는것 (상세) 왜냐하면 이부분에서 recyclerView를 리니어 레이아웃으로 설정했기 때문이다. 다르케하면 안보임 main 코드 package com.leopard4.memoapp; import androidx... 2023. 2. 1. 이전 1 2 3 다음