안드로이드에서 Fragment 간에 데이터를 전달하는 방법에 대해서 정리하고자 한다. Activity에서는 Intent를 사용하여 데이터를 전달한다면 Fragment는 Bundle을 사용하면 된다. Fragment fragment = new testFragment(); // Fragment 생성 Bundle bundle = new Bundle(); bundle.putString("param1", param1); // Key, Value bundle.putString("param2", param2); // Key, Value fragment.setArguments(bundle); Bundle로 전달된 데이터는 전달받는 Fragment의 onCreateView에서 getArguments()를 이용하여 데이터..
Retrofit을 사용해본지 상당한 시간이 지났고 기억이 잘 나지 않아 복습하고 학습하자는 의미로 연습해보기로 하였다. API는 비트코인 저장소 중 하나인 Bithumb Open API를 사용해보기로 하였다. Base URL : https://api.bithumb.com/public/ticker/{currency} 1) 먼저 Retrofit과 GSON을 사용하기 위해 Gradle설정을 한다. dependencies { ... compile 'com.google.code.gson:gson:2.8.2' // Gson 사용시 compile 'com.squareup.retrofit2:retrofit:2.3.0' compile 'com.squareup.retrofit2:converter-gson:2.3.0' //..
ANR이란? ANR은 Application Not Responding의 약자로 그대로 해석해보면 의미를 쉽게 파악할 수 있다. '애플리케이션이 응답하지 않는다.' 인 것이다. 이 에러의 원인은 Main Thread(UI Thread)가 일정 시간 어떤 Task에 잡혀 있으면 발생하게 된다. ANR의 발생 요인 ANR은 대체로 아래의 상황에서 발생하게 된다. 애플리케이션이 UI 스레드에 어떠한 I/O 명령(빈번한 네트워크 액세스)으로 인해 막힐 때 너무 많은 시간을 정교한 메모리 구조를 구축하는데 들일 때 구체적으로 설명하자면 Android Developers 에서는 아래와 같이 명시하고 있다. Input 이벤트(키를 누르거나 화면을 터치하는 등)에 5초안에 반응을 하지 않을 때 BroadcatReceiv..
최신 단말기에서는 크게 문제가 발생되지 않는 반면 예전(성능이 낮은) 단말기에서 고해상도의 Bitmap을 ImageView에 설정하면 보이지 않는 현상이 발생하는데 이를 해결하는 방법을 정리해보고자 한다. Logcat을 살펴보면... 설정하려는 비트맵의 크기가 텍스쳐에 업로드할 수 있는것에 비해 너무 크다는 에러 로그가 뜬다. W/OpenGLRenderer: Bitmap too large to be uploaded into a texture (4160x2340, max=4096x4096) 안드로이드의 Hardware Accelerated를 사용할 경우 기본적으로 GL_MAX_TEXTURE_SIZE 만큼만 rendering을 할 수 있기 때문에 이 SIZE를 넘어가는 Bitmap들은 문제가 발생한다는 것이..
ARC는 가비지컬렉션이 절대 아니다! 혼동하면 안됩니다. 방식 자체가 둘이 완전히 다르거든요. Objective C는 기본적으로 Reference Counting 이라는 메모리 관리 모델을 사용합니다. Objecitve C에서만 사용되는 방법은 아니지만 어쨌든 Objective C에서는 기본적으로 메모리를 관리하는 방법 그런데, 이 역시도 어떤면에서든 수동으로 메모리를 관리하는 것이 기본이다보니 프로그래머가 사람인 이상 실수할 때도 있더라는 겁니다. 그래서인지 애플은 XCode 4.2와 iOS 4.3부터 ARC (Automatic Reference Counting) 이라는 메모리 관리 기능을 추가 이로써 프로그래머들이 직접 메모리를 release 하지 않아도 되게 됨 오히려, ARC 기능이 추가되면서, ..
https://blog.neonkid.xyz/126 MQTT ( Message Queue TELEMETRY TRANSPORT )통신 장비, 모바일, 스마트폰 기기에 최적화된 가벼운 메시징 프로토콜로 IoT장비에 현재 많이 사용되고 있는 프로토콜 HTTP/HTTPS를 사용할 수도 있지만, IoT와 같은 Lite한 장비에 대해 단순 메시징 교환을 위해 무거운 프로토콜을 사용하면 성능 저하가 발생하게 된다. XMPP의 경우 메시지의 크기와 형태가 xml 파일 형식이므로 리소스가 크다는 단점이 있다.그래서 사용한 것이 바로 MQTT가 되겠다. MQTT는 Broker Pattern을 사용한다.Broker라는 중계자가 존재하고 해당 서버에서 Topic선정, Topic의 구독자들에게 메시지를 전달해주는 방식이다. 1..
시간 아껴서 최대한 빠르게 인원 현황판을 만들려고 하여 시도해보았다.Chrome에서 정상작동하는 코드이다. 작업 반의 반장이 왼쪽에 나오고 구성원이 영내자와 영외자로 구분되어 표시되는 레이아웃을 시도해보았다.이코드를 계속 다듬으면서 간단하게 코드를 구성할 생각이다. CSS3를 하면서 계속 느끼는 것이지만 잘못 클래스를 설계하면 스타일시트 파일이 정말 많이 더러워진다는 것이다.이를 명심하면서 클래스 설계시 신경을 많이 써야 겠다. 시간만 충분하다면 여유롭게 설계할텐데 너무 많이 더러워졌다. 중복되는 코드도 많아진 것 같고... 암튼 이상이다. ㅇㅅㅇ Specific Td Border Line F-4E/F 준위 홍길동 영외자 영내자 상사 홍길당 부사관 123기 상사 홍길당 부사관 123기 상사 홍길당 부사관..
Javascript 언어로 ANSI형식으로 저장된 csv파일을 불러오는 방법을 정리해보고자 한다. csv파일의 경우 주로 엑셀 프로그램에서 저장하는 형식 중 하나인데 Microsoft Excel의 경우 인코딩 형식을 따로 설정한 후 저장할 수 있느 기능이 존재하여 ANSI 던지 UTF-8 이던지 결정할 수 있지만 한셀이나 넥셀같은 국산 소프트웨어의 경우 Excel처럼 사용자가 형식을 저장할 수 없이 ANSI 형식으로 저장된다. ANSI 형식은 euc-kr형식이며 windows-1252형식과 동일하다.이러한 형식으로 HTML5 FIleReader를 활용한 csv Reader를 구현해보고자 한다. 아래는 예시 CSV파일이다. 열1,열2,열3,열4 데이터1-1,데이터2-1,데이터3-1,데이터4-1 데이터1-2..
- Total
- Today
- Yesterday
- retrofit
- 아이폰
- 오토레이아웃
- Elliotable
- 컬렉션
- SwiftUI
- Kotlin
- C++
- 애플워치
- 안드로이드
- Auto Layout
- Notissu
- Swift
- watchos
- 함수형프로그래밍
- 함수형
- Rxjava
- apple
- 코틀린
- 상속
- ios
- 알고리즘
- XCode
- Apple Watch
- android
- Reactive programming
- 스위프트
- CloudComputing
- databinding
- java
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |