일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 막내의막무가내 코틀린 안드로이드
- 프래그먼트
- 막내의막무가내 플러터 flutter
- 주엽역 생활맥주
- 막내의막무가내 알고리즘
- 부스트코스에이스
- 안드로이드 sunflower
- 부스트코스
- 막내의막무가내 일상
- 막내의 막무가내 알고리즘
- 2022년 6월 일상
- 막내의 막무가내
- Fragment
- flutter network call
- 막내의막무가내
- 막내의막무가내 코틀린
- 안드로이드
- 막내의막무가내 프로그래밍
- 막내의막무가내 SQL
- 막내의막무가내 목표 및 회고
- 막내의막무가내 안드로이드
- 막내의막무가내 코볼 COBOL
- 막내의막무가내 안드로이드 에러 해결
- 막내의막무가내 플러터
- 주택가 잠실새내
- 막무가내
- 막내의막무가내 rxjava
- 막내의막무가내 안드로이드 코틀린
- 안드로이드 Sunflower 스터디
- 프로그래머스 알고리즘
- Today
- Total
목록분류 전체보기 (689)
막내의 막무가내 프로그래밍 & 일상
프로젝트에서 자바스크립트 파일 하나 생성 후터미널창에 다음과 같이 입력한다. 1. npm init 그럼 정보입력창들이 뜨는데 description빼고는 딱히 건들게 없다. 그냥 엔터를 연타하자 2. npm install express --save express는 노드기반의 웹서버중 하나이며 가장 큰 규모를 가지고 있다. 이것을 다운받고 설치된 내역을 package.json에 저장해준다. node_modules 모듈이 생긴걸 확인 할 수 있다. 그 안에 express폴더가있다. 3. 서버실행코드 (init.js) 예제 const app = express(); const PORT = 4000; const handleListening = () => console.log(`Listening on: http://..
이번에 부스트코스 리뷰를 받으면서 객체를 전달할 때 Serializable이 간편해서 써왔는데 성능상 Parcelabe을 이용하는게 좋다는 리뷰를 받아서 이에대해 알아보는 포스팅을 해보겠습니다. 제목과 같이 둘의 성능차이에 대해 여러글들을 구글링 해보고 요약 및 정리해봤습니다. Parcelable 인터페이스는 Serializable인터페이스보다 구현하는 것보다 좀 더 어렵지만 읽기 및 쓰기 속도는 더 느립니다.(글마다 다른데 양이 많을수록 Parcelable이 훨씬 효율적이게 되고 2배~10배 가까이 빠르다고 합니다.) Serializable 은 해당클래스가 직렬화 대상이라고 알려주기만 할 뿐 어떠한 메서드도 가지지 않는 단순한 “마커 인터페이스 (Marker Interface)” 이므로, 사용자는 매우..
복사하기 버튼을 누르면 초대코드를 복사하는데 사용했다. 사용법은 간단하다 . 클립보드매니저(ClipboardManager)를 생성해주고 ClipData에 id값과 복사할 텍스트를 넣어준 후 클립보드매니저에 set해주면 된다. private void setOnClickListener() { onClickListener = new View.OnClickListener() { @Override public void onClick(View v) { switch (v.getId()) { case R.id.setprofile_invite5_li_back: finish(); break; case R.id.setprofile_invite5_btn_copy: //클립보드 사용 코드 ClipboardManager clip..
프래그먼트는 프래그먼트 매니저를 통해 불러와진다. 그래서 자바소스파일에서 프래그먼트를 추가하고 싶다면 프래그먼트매니저를 사용해야한다. 프래그먼트와 이에 대한 설명을 간단히 하자면 다음과 같습니다. 출처: https://www.edwith.org/boostcourse-android/lecture/17074/ 만약 소스 코드에서 프래그먼트를 추가하고 싶다면 프래그먼트 매니저를 사용해야 합니다. 프래그먼트는 프래그먼트 매니저가 관리하기 때문에 프래그먼트 매니저를 통해 화면에 추가하거나 다른 프래그먼트로 교체하거나 하는 일을 할 수 있습니다. 프래그먼트 매니저는 getSupportFragmentManager 메소드를 호출하면 참조할 수 있고 XML 레이아웃에 추가된 프래그먼트는 findFragmentById 메..
리사이클러 뷰에서 처음 10개씩 데이터를 불러오는데 위에서 아래로 댕기면 새로고침, 마지막 아이템에서 아래에서 위로 댕기면 로딩 후 데이터를 10개 더 가져오는 것을 구현해봤고 포스팅을 할려고한다. 아래에서 위로 댕겨서 데이터를 더 불러오는 것은 밑 사이트를 참고했다. http://www.devexchanges.info/2017/02/android-recyclerview-dynamically-load.html Learn Programming Together: Android RecyclerView dynamically load more items when scroll to end with bottom ProgressBar xxxxx www.devexchanges.info SwipeRefreshLayout과..
카톡 화면이 보이지 않는 상태에서 메시지가 왔다고 알림 화면이 뜨는 경우를 볼 수 있습니다. 이것은 카톡 앱이 사용자의 눈에 보이지 않는 상태에서도 무언가 실행되고 있다는 것을 의미합니다. 화면이 없이도 데이터를 주고받는 기능을 실행하고 때로는 메시지를 받아서 처리해야 하는데 이 때 사용되는 것이 서비스입니다. 서비스는 화면이 없는 상태에서 실행되는 하나의 애플리케이션 구성요소입니다. 요즘에는 인터넷을 통해 데이터를 주고받는 경우가 많은데 이때 대부분 서비스라는 것을 사용하게 됩니다. 서비스 앱을 실행했을 때 화면이 항상 보이는 것은 아닙니다. 다시 말해 화면을 띄우지 않고도 필요한 기능을 실행할 수 있습니다. 화면 없이 백그라운드에서 실행되는 하나의 단위를 서비스(Service)라고 부릅니다. 서비스는..
단순 알림을 주고 알림을 누르면 런처액티비티로 이동하는 것은 예전에 해봤으나 알림을 누르면 채팅방이나 게시물로 이동하고 해당 내용들을 보여주게 하는 것은 이번에 처음 해봤다. 그에 대해 다시는 까먹지 않도록 코드와 간단한 설명을 기록하기위해 포스팅한다. 먼저 위 문서를 보면 Data는 포어그라운드와 백그라운드일 때 둘다 onMessageReceived를 통해 전달이 되나 Notification은 백그라운드에서는 onMessageReceived로 받을 수 없음을 알 수 있다. 그래서 두가지 경우에 대해 해봤다. 먼저 노티피케이션으로 감싸보냈을 때와 Data로 감싸보넀을 때 중 전자를 먼저 작성해보겠다. 예를들어 전자는 이러한 페이로드로 { from:, to:, notification: { title:, b..
https://yookeun.github.io/java/2017/05/27/java-gson/ Java에서 JSON(GSON)사용 Java에서 간단하게 json을 생성하고 파싱하는 방법을 알아보자. 여러가지 라이브러리가 있는데 우리는 여기서 구글에서 만든 gson를 이용하겠다. gson은 비교적 가볍고, 메이븐저장소를 지원하고 전반적으로 성능이 좋아서이다. 먼저 메이븐으로 다운로드한다. com.google.code.gson gson 2.8.0 1. 객체를 json으로 만들자. Person이라는 객체가 있다면 이를 json으로 변경해보자. @Data public class Person yookeun.github.io
안드로이드를 하면서 기기마다 시간설정이나 국가가 다르면 서로 다르게 불러와져서 한국의 시간으로만 나오게끔 하고싶어서 다음과 같이 만들어서 사용했었다.(두번째거는 날짜와 타임스탬프를 합쳐서 토큰을 만들었던 것이다.) private String getDate() { SimpleDateFormat sdf = new SimpleDateFormat("MM/dd HH:mm"); Calendar calendar = Calendar.getInstance(); Date date = calendar.getTime(); sdf.setTimeZone(TimeZone.getTimeZone("Asia/Seoul")); String dateResult = sdf.format(date); return dateResult; } //게..
부스트코스 에이스를 진행하면서 Intent로 값을 전달해주고 화면전환을 하는 코드에서 위와 같이 코드리뷰를 받았다. 그래서 스타터 패턴에 대해서 찾아봤다. https://riptutorial.com/android/example/5357/starter-pattern Android - Starter Pattern | android Tutorial android documentation: Starter Pattern riptutorial.com https://hackernoon.com/object-oriented-tricks-4-starter-pattern-android-edition-1844e1a8522d Object Oriented Tricks: #4 Starter Pattern -Android Editi..
//글자크기 다른 힌트 세팅 mWriteEditText.setHint(Html.fromHtml("" + "내용을 입력해주세요" + "" + "" + "" + " " + " " + "다음의 경우 경고 없이 삭제조치 될 수 있습니다." + " " + "-연락처, SNS, ID등 연락 수단을 남기는 경우" + " " + "-타인의 개인정보를 올리는 경우" + " " + "-특정 회원을 비난하는 경우" + " " + "-욕설, 음란물 등을 올리는 경우" + "")); mImageRuleTextView.setText(Html.fromHtml("" +"미팅과 어울리는 이미지를 올려주세요" + ""));
아이콘 사이트 https://www.iconfinder.com/ 4,675,000+ free and premium vector icons in SVG, PNG, CSH and AI format. Iconfinder is the leading search engine and market place for vector icons in SVG, PNG, CSH and AI format. www.iconfinder.com https://www.flaticon.com/ Flaticon, the largest database of free vector icons Download all icons in SVG, PSD, PNG, EPS format or as webfonts www.flaticon.com https:..
안드로이드 스튜디오작업하다가 밑 사진과 같이 run창 logcat창이 갑자기 사라졌었다. 하지만 에뮬레이터 실행은된다. 그러나 run창 Logcat창이 사라져서 뭐때문에 에러가 났는지 알수도 없고 필수적으로 있어야할 창이 사라져서 고생하다가 해결방법을 우연히 찾았다. (구글링해도 상단에 있는 run 관련해서밖에 못찾아서 ㅠ) 바로 왼쪽 가장 하단에 저 네모난 버튼을 클릭하면된다. 이제 run창과 함께 에러를 볼 수 있다 윽..
안드로이드에서는 사용자의 눈에 보이는 화면의 배치 부분을 XML 파일로 쉽게 만들 수 있도록 XML 레이아웃 파일과 소스 파일을 분리시켜 두었습니다. 이 때문에 XML을 이해할 수만 있어도 화면 레이아웃을 만들 수 있는 장점이 생겼습니다. 그런데 분리해둔 XML 레이아웃 파일에 들어있는 버튼을 소스 파일에서도 사용하게 되는데 어떤 과정을 거쳐서 분리된 파일에 넣어둔 정보를 알아낼 수 있는 걸까요? 인플레이션은 그 해답이 될 수 있습니다. 위 그림에서 보는 것과 같이 안드로이드는 레이아웃파일+자바소스파일이 합쳐져서 스마트폰의 화면을 나타내고 동작하게 만듭니다. 안드로이드 스튜디오를 보면 액티비티의 레이아웃 디자인을 한번에 볼 수 있는 xml파일과 레이아웃에 대한 자바소스 파일이 분리되어있습니다. 이렇게 한..
public class BitmapConverter { /* * String형을 BitMap으로 변환시켜주는 함수 * */ public static Bitmap StringToBitmap(String encodedString) { try { byte[] encodeByte = Base64.decode(encodedString, Base64.DEFAULT); Bitmap bitmap = BitmapFactory.decodeByteArray(encodeByte, 0, encodeByte.length); return bitmap; } catch (Exception e) { e.getMessage(); return null; } } /* * Bitmap을 String형으로 변환 * */ public static..