Front-end76 리액트 프로젝트 생성 시작 노드 설치 https://nodejs.org/ko/download/ 다운로드 | Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org * 노드 설치 오류 노드 설치 중에 오류가 생겼었는데 관리자 권한 설치고 문제 해결 설치 확인 node -v Visual Code 리액트 개발 툴로는 Visual Code가 좋다. https://code.visualstudio.com/download Download Visual Studio Code - Mac, Linux, Windows Visual Studio Code is free and available on your favorite platform - Li.. 2022. 6. 4. [Kotlin] 위젯 : 텍스트뷰 , EditText / 리소스 : drawable , mipmap 화면에 그려지는 디자인 요소 위젯 Common 텍스트, 버튼, 레이아웃 등 일반적으로 많이 사용되는 것들 Text 글자를 화면에 나타내거나 입력받을 수 있는 위젯 Buttons 버튼은 사용자로부터 클릭 또는 터치 관련 이벤트를 받을 수 있는 위젯 모음 Widgets 위젯은 이미지 , 웹 사이트, 별점 표시 , 진행 상태 등의 정보를 화면에 그리는 위젯 모음 텍스트뷰 test 속성에 직접 입력할 수도 있지만 권장하지는 않는다. 앱을 개발할 때 strings.xml에 사용할 텍스트를 미리 정의해높고 가져다가 사용하는 것을 권장한다. 다국어 처리, 텍스트 수정 등 앱을 관리하기에 용이하기 때문이다. app - res - values 디렉터리 아래에 strings.xml 파일이 있다. strings.xml te.. 2021. 10. 31. Android Studio , 동적 뷰 생성 시 많이 접하는 Exception / java.lang.IllegalStateException: The specified child a already has a parent. You must call removeView() on the child's parent first 뷰들을 동적 생성하면서 흔히 접하는 Exception 이 있다. 위 경우는 TableLayout 을 생성하는 경우이다. TableRow 를 생성해서 TextView 로 속성값을 생성하여 addView() 하고 완성된 한 행을 TableLayout 에 addView 를 하는 것이다. java.lang.IllegalStateException: The specified child a already has a parent. You must call removeView() on the child's parent first 이 예외는 이미 한번 addView 한 View 타입을 한번 더 addView 할 때 발생한다. (중복 추가) TableRow 한 행을 완성한 후 TableLayout 에 addView 하는 것.. 2021. 9. 12. Android Studio , 채팅 구현하기 | 메시지 읽음 표시 카톡 메시지 처럼 읽은 사람 수를 표시하는 기능을 추가 하였다. 데이터 베이스에 채팅방내 메시지당 readUsers를 추가하여 읽은 id 수를 계산하여 채팅방 총 사람에서 읽은 사람 수를 뺀 count를 표시한다. 우선 item_messagebox.xml 에서 좌측 우측 메시지 카운터 TextView를 추가 ViewHolder에 추가 private class ViewHolder extends RecyclerView.ViewHolder { //.. public TextView textViewReadCounterLeft; public TextView textViewReadCounterRight; public ViewHolder(@NonNull View itemView) { super(itemView); //.. 2021. 2. 17. Android Studio , 채팅 구현하기 | 대화상자 AlertDialog 채팅 프로필 상태메시지 대화상자 | Android 개발자 | Android Developers 대화상자는 사용자에게 결정을 내리거나 추가 정보를 입력하라는 메시지를 표시하는 작은 창입니다. 대화상자는 화면을 가득 채우지 않으며 보통은 사용자가 다음으로 계속 진행하기 전에 조 developer.android.com 대화상자는 사용자에게 결정을 내리거나 추가 정보를 입력하라는 메시지를 표시하는 작은 창이다. 대화상자는 화면을 가득 채우지 않으며 보통은 사용자가 다음으로 계속 진행하기 전에 조치를 취해야 하는 모달 이벤트에 사용된다. 시나리오 대화상자를 통해 상태 메시지를 설정한다. 다이알로그 레이아웃 생성 대화상자 구현 builder = new AlertDialog.Builder(context); LayoutInflater lay.. 2021. 2. 14. Android Studio , 채팅 구현하기 | Firebase realtime Database chat / 파이어베이스 실시간 데이터 베이스 채팅앱 구현에 다루어야 되는 게 엄청 많다. 사용자 목록(데이터베이스 읽기), 채팅방 리스트, 채팅방 리스트에 최신 메시지 나타내기, 타임스탬프, 채팅방 구현, 사용자 위치 등등.. 여기서 채팅의 핵심인 메시지 보내고 받는 부분을 상세하게 보여주고 마지막에 모든 코드를 보여드릴려고 한다. Android Studio Firebase - Realtime Database - Storage - Authentication 시나리오 채팅 메시지를 보낸다. 메시지를 받고 메시지를 보낸다. 메카니즘 전송 버튼을 누르면 상대방 아이디와 채팅한 적있는지 검사한다. : MessageActivity - chekChatRoom() 메시지를 보낸다. : MessageActivity - sendMsgToDataBase() 리싸이클.. 2021. 2. 7. Android Studio , Firebase 파이어베이스 : 원격 구성 , remote config 파이어베이스 원격 구성 파이어베이스 원격 구성으로 클라우드에서 앱의 매개변수를 정의하고 값을 업데이트하면 앱의 xml에 값이 반영이되어 앱의 모양과 동작을 수정할 수 있다. 1. 모듈(앱) Gradle 파일 SDK 추가 dependencies { // Declare the dependencies for the Remote Config and Analytics libraries // When using the BoM, you don't specify versions in Firebase library dependencies implementation 'com.google.firebase:firebase-config' implementation 'com.google.firebase:firebase-analy.. 2021. 1. 22. Android Studio , Firebase 파이어베이스 : 실시간 데이터베이스 트랜잭션 (Transaction), 좋아요 구현 시나리오 좋아요 버튼을 누른다 트랜잭션으로 실시간데이터베이스에 저장 데이터 트랜잭션으로 저장은 (좋아요) 증가 감소 카운터와 같이 동시 수정으로 동기화가 필요한 데이터를 다루는 경우 트랜잭션 작업을 사용 ex) 게시글에 별표주기, 게시글 별표 몇 개 받았는지 private void onStarClicked(DatabaseReference postRef) { postRef.runTransaction(new Transaction.Handler() { @Override public Transaction.Result doTransaction(MutableData mutableData) { Post p = mutableData.getValue(Post.class); if (p == null) { return Tr.. 2021. 1. 18. Android Studio , Firebase 파이어베이스 : 실시간 데이터베이스 게시물 삭제 + 스토리지 삭제 Storage 파일 삭제 storage 파일 삭제는 해당 파일명이 필요하다. 우선 파일 업로드시 파일 명을 ImageDTO에 저장한다. imageDTO.setImageName(file.getLastPathSegment()); child 파라미터로 폴더명이나 파일명 조합으로 한다. .child("폴더명").child("파일명") private void onDeleteImage(final int position) { storage.getReference().child("images").child(imageDTOList.get(position).getImageName()).delete().addOnSuccessListener(new OnSuccessListener() { @Override public void.. 2021. 1. 13. Android Studio , Firebase 파이어베이스 : 실시간 데이터베이스 데이터 읽고 쓰기 (like. 인별그램) 시나리오 사진 올리기 앨범에서 사진을 선택하고 제목, 내용을 쓴다. 데이터 쓰기 사진 올리기 데이터를 파이어베이스 실시간데이터베이스에 저장, 스토리지에 사진을 저장한다. 데이터 읽기 (올린 사진 보기) 파이어베이스에서 실시간 데이터베이스 데이터를 가져온다. 사진 올리기 올릴 게시물 데이터 객체 public class ImageDTO { private String imageUrl; private String title; private String description; private String uid; private String userId; getter setter } 파이어베이스 인스턴스 생성 private FirebaseAuth mAuth; private FirebaseStorage storage;.. 2021. 1. 12. Android Studio , 사진 가져오기 , Glide 휴대폰 내 사진첩에서 사진을 가져와서 Glide 을 적용하여 사진 형태를 원 형태로 보여주려고 한다. 1. 종속성 설정 dependencies { implementation 'com.github.bumptech.glide:glide:4.11.0' // Skip this if you don't want to use integration libraries or configure Glide. annotationProcessor 'com.github.bumptech.glide:compiler:4.11.0' } 2. 권한 설정 3. 로컬 사진첩으로 넘어간다. private int GALLEY_CODE = 10; /... Intent intent = new Intent(Intent.ACTION_PICK); inte.. 2021. 1. 8. Android Studio , Firebase 파이어베이스 Storage 저장 클라우드 스토리지는 사진, 동영상 등의 객체 저장소 서비스이다 파이어베이스 콘솔의 Storage를 선택한후 시작하기를 클릭한다. 로그인 - Google 계정 하나의 계정으로 모든 Google 서비스를 Google 계정으로 로그인 accounts.google.com 클라우드 스토리지 시작하기 종속성 설정 dependencies { // Import the BoM for the Firebase platform implementation platform('com.google.firebase:firebase-bom:26.1.0') // Declare the dependency for the Cloud Storage library // When using the BoM, you don't specify versi.. 2021. 1. 4. 이전 1 2 3 4 5 6 7 다음