전체 글 썸네일형 리스트형 배열을 정렬하는 방법 동일한 타입의 데이터가 배열로 존재하는 경우 이를 정렬(Sort)하고 싶은 경우가 있습니다. 자바에서는 Comparator 라는 클래스를 정의하여 이를 해결할 수 있습니다. 데이터를 정렬하고 싶은 규칙만 있다면 정렬하는 것은 어렵지 않습니다. 자 아래의 코드는 Integer 타입의 ArrayList의 데이터를 정렬하는 연습코드입니다. import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; public class TestComaprator { public static void main(String[] args) { ArrayList alNumber = new ArrayList(); alNumber.add(n.. 더보기 String 데이터에서 split() 메소드 사용시 띄어쓰기 인식하기 자바에서 문자열을 split하는 경우가 꽤 됩니다. 뭐.. 데이터 파싱을 위해서 자르기도 하고, 필요에 따라 사용하는데요.. 이런 경우 "ABC DEF" 같이 중간에 띄어쓰기가 있는데 이를 인식하여 자르려고 하면 보통 String[] arStr = "ABC DEF".split(" "); 위와 같은 형식으로 코딩을 하게 됩니다. 이렇게 해도 잘 동작합니다만, 안되는 경우도 종종 있습니다. 그래서 열심히 구글링하여 찾은 정보로 정규식표현을 사용하면 된다는 것을 알았습니다. 자~ 스페이스 한칸을 인식하게 하는 방법은 String[] arStr = "ABC DEF".split("\\s"); 를 사용하면 됩니다. 간단하죠? 또 다른 예로 중간 공백이 가변적인 경우 1개 이상의 공백이 있는 데이터를 정상적으로 잘라.. 더보기 Parcelable 를 구현할 때 주의점 (ArrayList) 상태저장, 복구가 필요한 데이터에 대해서 implements Parcelable 을 구현하게 됩니다. 구현해야 하는 메소드와 CREATOR 에서 사용자 지정 타입의 ArrayList를 저장하는 방법에 대해서 기술합니다. ArrayList에 사용할 데이터 클래스는 아래와 같이 기술합니다. package com.example.testtypedarraylistparcelable; import android.os.Parcel; import android.os.Parcelable; public class InnerData implements Parcelable { public int nSeq; public String strMessage; public InnerData(int nSeq, String strMess.. 더보기 GCM(Google Cloud Message) 처리시 JSON의 collapse_key 의미와 사용방법 GCM 을 전송하는 방법에는 자체 Sender를 이용하여 Message 클래스를 이용한 메시지 전송방법과 URL에 JSON 포맷의 스트리밍을 전달하는 방법이 있습니다. 그중에서 JSON방식을 사용하는 이유는 메시시당 1000명에 해당하는 다중사용자 전송이 가능하기때문인데요. 이를 개발하다보니 이상한 경우에 collapse_key 설정이 정상적으로 구글서버에서 파싱되지 않는 경우가 있었습니다. 일단 중요한 것은 collapse_key 는 혹시 실수로 다중전송되더라도 클라이언트에 collapse_key 가 중복되는 경우 동일한 메시지로 판단하여 중복메시지를 피하는 것에 의미가 있습니다. c2dm에서 GCM으로 변경되면서 회수제한도 없어져서 많이 사용하게 될 것 같습니다. collapse_key에 사용할 수 .. 더보기 특정 기기에서 DatePickerDialog, TimePickerDialog에서 '설정', '취소' 가 나오지 않고 '저장'으로 표시되는 경우 내 LG의 LTE2 모델의 경우 저런 오류(?)가 발생한다. 저렇게 표시만 되면 다행인데, 취소버튼이 없어서 뒤로가기 버튼을 눌러도 '설정'버튼을 누른 이벤트가 정상적으로 실행이 되고, '저장'버튼을 누른 경우 '설정'버튼을 누른 것 같은 이벤트가 2회 발생한다. 구글링결과 안드로이드 특정 버전에서 위와 같은 오류가 알려져있다고 한다. 이를 해결하기 위해서 소스를 간단히 수정해 보았다. // 한번만 실행하기 위한 체크변수 int nCheck = 0; @Override protected Dialog onCreateDialog(int id) { switch (id) { case DATE_DIALOG_ID: // 날짜선택 다이얼로그 호출 DatePickerDialog dialog = new DatePicker.. 더보기 SubVersion 백업 및 복구 SVN만으로도 충분히 소스를 백업하는 기능이 출중하지만, 정말 만약의 사태를 대비하여 소스의 백업을 2차, 3차까지 해주는 것은 나쁜 일이 아닙니다. 오늘은 SVN서버의 Repository를 백업하고 이를 복구하는 과정을 적어보겠습니다. (이 과정은 Repository가 생성되어 사용중이라는 가정하의 글입니다. 아직 사용하는 Repository가 없다면 SVN Repository 생성에 관한 글을 먼저 읽어보시기 바랍니다. 2012/02/10 - [개발툴/eclipse] - Subversion, Eclipse를 이용한 소스관리와 다중사용자 개발환경 만들기 제가 운영하는 SVN서버를 기준으로 설명합니다. 저는 리눅스 서버에 subversion 이라는 프로그램의 SVN을 사용하여 운영중입니다. 대부분의 작업.. 더보기 [SQL] JOIN 의 종류와 사용법 테이블과 테이블의 데이터를 공통사항으로 연결하여 보여주는 경우 사용하는 예약어입니다. 사용하는 형태는 INNER JOIN, LEFT OUTER JOIN, RIGHT OUTER JOIN 으로 3가지 방법이 존재합니다. 간단히 DB를 구성하고 예제를 통하여 알아보겠습니다. /** 테이블 생성과 데이터 입력 **/ USE [U_TEST] GO /****** Object: Table [dbo].[T_USER] Script Date: 10/15/2013 13:31:27 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO SET ANSI_PADDING ON GO -- T_USER 테이블 생성 CREATE TABLE [dbo].[T_USER]( [C_GENDER] [.. 더보기 안드로이드 해상도별 아이콘 사이즈 애플의 아이폰과 같이 단일화된 기기에 특정 해상도만 가진 기기를 타겟으로 개발하는 반면, 안드로이드는 다양한 해상도, 픽셀밀집도가 각각의 기기마다 다르기때문에 디자인에서 정말 고달픕니다. 기본적으로 안드로이드에서 아이콘을 하나 제작하더라도 배포용 512x512 사이즈의 이미지가 필요하고, 추가로 지원하는 기기의 dpi에 따라서 아이콘을 사이즈별로 준비해야 합니다. dpi에 따른 아이콘 사이즈는 구글에서 정의하여 같은 사이즈로 배포해야 합니다. 기기에 따라서 아이콘의 해상도가 정확하게 일치하지 않으면 아이콘을 화면에 보여주지 않는 기기도 종종 있습니다. (지금 기억은 안나는데 아이콘 사이즈에 신경안쓰고 테스트 중이던 프로그램이 그런 경우가 있었습니다.) 최근 xxhdpi이라는 해상도가 추가되었습니다. 최근.. 더보기 이전 1 ··· 22 23 24 25 26 27 28 ··· 75 다음