본문 바로가기
[Java 개발자가 공부해본 C#] 더 나은 세상을 위한 C# ( C#의 등장배경, C#은 왜 필요한가?, 닷넷은 무엇인가? ) 안녕하세요 돼지왕 왕돼지입니다. "뇌를 자극하는 C# 4.0 프로그래밍" 이라는 책을 구입하여 오늘부터 공부를 시작해보았습니다. 오늘부터 쓰는 대부분의 글은 Java 언어를 main 으로 개발하고 있는 제가, 즉 Java 개발자가 공부해본 C# 에 대해 정리하는 글이 될 것입니다. 이번 글에서는 C# 의 등장배경과 C, C++ 도 있는데 C# 은 왜 필요한지, 닷넷은 무엇인지에 대해 간단히 정리해보겠습니다. C# 넌 누구니? C++ 이 C 언어에 + 1을 했다는 의미, 즉 C + 1 을 프로그래밍적으로 표현한 C++ 이라는 것은 알고 계시죠? 자 이제 이 C++ 에 ++ 를 한번 더 붙여보겠습니다. C++++ 이냐구요? 새로 더하는 ++ 을 기존에 있던 ++ 의 아래에 붙이면 바로 C# 이 됩니다. 이 .. 2012. 4. 12.
[Android/안드로이드] 안드로이드의 수난시대. 안녕하세요 돼지왕왕돼지입니다. 제목은 "안드로이드의 수난시대" 입니다. 이 글을 보고 여러분은 아마도, 진짜 안드로이드가 애플의 아이폰에 비교당해 수난을 겪고 있다고 느끼셨겠죠? ㅋㅋ 사실 낚시를 위한 글은 아니었는데, 제목을 지어놓고 나니 낚시글이 되어버린 것 같아 마음이 조금.. 기쁘기도 하고 그렇습니다. 허허.. 사실 안드로이드 개발자로서, 애플에 비해 개발성도 좋고, 빠른 업데이트로 ( 장점이자 단점이지만.. ) 진취적 기상을 보이는 안드로이드를 좋아하고, 수난이라고 생각하지 않습니다. 개인적 기대로는 향후 3년 안에 애플을 뛰어넘을 수 있지 않을까 기대해봅니다. 각설하고, 안드로이드의 수난시대라는 제목은 잠시 쉬어가는 코너로, 대전에서 어느 핸드폰 가게에서 안드로이드 홍보를 위해 매장 앞에 청테.. 2012. 4. 11.
[Android/안드로이드] ViewFlipper 의 IllegalArgumentException. 안녕하세요 돼지왕 왕돼지입니다. ViewFlipper 를 사용하면서 Orientation 을 변경하니 IllegalArgumentException 이 발생하더군요. 로그는 다음과 같습니다. 04-10 22:22:25.201: W/dalvikvm(15721): threadid=1: thread exiting with uncaught exception (group=0x4001d5a0) 04-10 22:22:25.211: E/AndroidRuntime(15721): FATAL EXCEPTION: main 04-10 22:22:25.211: E/AndroidRuntime(15721): java.lang.IllegalArgumentException: Receiver not registered: android.wi.. 2012. 4. 10.
[android] 다른 Activity 를 startActivity 로 실행시킬 때, 기존 Activity의 onDestory가 불리는 현상. 안녕하세요 돼지왕 왕돼지입니다. 오늘은 ICS 단말로 이것저것 실험하다가 또 새로운 사실을 발견해냈습니다. A Activity 에서 startActivity 를 통해 B Activity 를 호출했을 때, A Activity 의 onDestroy() 가 호출되는 것입니다.! 게다가 (당연하지만) B Activity 에서 Back key 로 A Activity 로 돌아올 떄 A Activity 의 onCreate() 가 불리는 것입니다. 이런 이런 깜놀한 상황이.. 이것을 막는 방법은 다음과 같습니다. [Setting] - [{} Developer options] - [Don't keep activities] 체크 해제 요렇게 하면, ICS 에서의 요상한 동작을 막을 수 잇습니다. 사실, user 에 어떤 .. 2012. 4. 10.
[Android/안드로이드] GridView Item 정사각형( square )으로 만들기. 안녕하세요 돼지왕 왕돼지입니다. 요즘은 GridView 를 가지고 작업하는데 이것저것 제약사항이 많다는 것을 실감하고 있습니다. 그 중 하나는 GridView 의 item 들을 정사각형(square)로 만들고 싶은데, 기본은 rectangle 이라는 점. 그럼 어떻게 해결할 수 있을까요? @Override public View getView( int position, View convertView, ViewGroup parent ){ if ( convertView == null ){ convertView = new ImageView( getBaseContext() ); convertView.setLayoutParams( new GridView.LayoutParams( 300, 300 ) ); ... } .. 2012. 4. 10.
[Android/안드로이드] GridView 주변 margin (공백) 없애기. 안녕하세요 돼지왕 왕돼지입니다. GridView 를 가지고 작업을 하는데 주변 margin ( 공백 )이 있어 보기에 이뻐보이지 않더군요. marginLeft, marginTop 를 0dp 로 주어 제거하려 했지만, 소용없었습니다. 물론 paddingLeft, paddingTop 등도 주었죠. 문제는 무엇이냐? 바로 Selector 입니다. GridView 가 기본적으로 Selector 를 제공하는데 Selector 를 위한 공간이 필요하여 주변에 공백을 남겨놓는 것이죠. 그럼 이 공백을 어떻게 제거할 수 있느냐? 위와 같이 selector 를 null 로 assign 해줌으로서 문제를 해결할 수 잇습니다. 도움이 되셨다면 손가락 꾸욱~ 2012. 4. 10.
[Android/안드로이드] W/OpenGLRenderer(7055): Bitmap too large to be uploaded into a texture 대처 방법 안녕하세요 돼지왕 왕돼지입니다. 오늘은 W/OpenGLRenderer(7055): Bitmap too large to be uploaded into a texture 경고에 대한 대처 방법에 대해 알아보겠습니다. W/OpenGLRenderer(7055): Bitmap too large to be uploaded into a texture 무슨 말인가? Android의 HoneyComb version 이후부터 하드웨어 가속을 이용할 수 있습니다. 따라서 2D rendering도 OpenGL 을 이용하여 rendering 할 수 있으며 더 빠른 rendering 효과를 얻을 수 있게 되었습니다. OpenGL 에서 image 는 texture 의 형태로 전달되는 데 이 이미지의 사이즈가 2048 * 2048 .. 2012. 4. 6.
[Android/안드로이드] JNI Local Reference Changes in ICS ( ICS 부터 바뀌는 JNI Local Reference ) 안녕하세요 돼지왕 왕돼지입니다. 오늘은 "JNI Local Reference Changes in ICS" 를 주제로 알아보겠습니다. 이 글은 http://android-developers.blogspot.com/2011/11/jni-local-reference-changes-in-ics.html 내용 번역본입니다. ( 이해가 쉽도록 의역을 많이 넣었습니다. 모호한 내용은 원문을 확인하세요. ) JNI Local Reference Changes in ICS 당신이 native code 를 쓰는 것이 아닌 native 함수만 사용한다면 그만 읽어도 됩니다. 하지만, 당신이 JNI 를 이용해서 native code 를 사용한다면, 당신은 이것을 읽는 것이 큰 도움이 될 것입니다. What's changing,.. 2012. 4. 6.
[Android/안드로이드] Eclipse 에서 "Error generating final archive: Debug Certificate expired on <날짜>" 에러가 난다면? 안녕하세요 돼지왕 왕돼지입니다. 오늘은 Eclipse 에서 "Error generating final archive: Debug Certificate expired on " 에러가 나면서 compile 에러가 났을 때 해결 방법을 알아보겠습니다. 에러의 원인 우선 원인은 말 그대로 Debug signkey 의 유효기간이 끝났다는 이야기입니다. Signkey 에 대한 내용은 이 글을 참조하세요. 2012/02/08 - [프로그래밍 놀이터/안드로이드] - [android/안드로이드] 어플리케이션 싸인하기 ( Sign Application ) - 개념 자 그럼 어떻게 해결을 하느냐? 간단합니다. 탐색기를 열고, C:\Users\[사용자 id]\.android\ 로 이동합니다. 보시면 "debug.keystor.. 2012. 4. 6.
반응형