본문 바로가기

프로그래밍

(287)
Toast View 만들기 이번엔 커스텀 토스트 뷰를 만들어 볼 예정. 의례 하는데로 xml 레이아웃을 구성한다. 다이얼로그와 같이 토스트뷰를 위한 레이아웃을 별도로 구성하고, 해당 레이아웃에 원하는 뷰들을 배치한다. toast_layout.xml로 레이아웃을 생성한다. 레이아웃 구성이 끝나면, 소스코드에서 호출해 사용하면 된다. 다이얼로그와 같이 LayoutInflater 객체를 사용해 xml로 부터 레이아웃을 얻어와 사용한다.(getLayoutInflater() 혹은 getSystemService() 사용) LayoutInflater inflater = getLayoutInflater(); View layout = inflater.inflate( R.layout.toast_layout, (ViewGroup) findViewBy..
AlertDialog 만들기 AlertDialog 는 일반적인 알림 대화상자에서 가장 범용적으로 사용되는 폼을 가지고 있다. 요녀석은 다른 다이얼로그와 조금 다르게 생성하고, 설정을 해야 하는데.. AlertDialog.Builder 를 통해 레이아웃을 붙이거나 설정을 조절할 수 있다. 1. 레이아웃 생성 다이얼로그로 사용할 레이아웃을 하나 만든다.. 기타 원하는 View를 추가한다. 2. AlertDialog // AlertDialog 객체 선언 AlertDialog.Builder builder; AlertDialog alertDialog; // Context 얻고, 해당 컨텐스트의 레이아웃 정보 얻기 Context context = getApplicationContext(); LayoutInflater inflater = (La..
Button 오브젝트 기본 레이아웃 이미지아이콘 추가 android:drawableLeft="@drawable/image" android:drawableRight, android:drawableTop, android:drawableBottom 텍스트와 이미지 간격 설정 android:drawablePadding="10dp" 소스상에서의 레이아웃 구성 Drawable icon = Drawable.createFromPath( "/data/icon/image.png" ); icon.setBounds( 0, 0, icon.getIntrinsicWidth(), icon.getIntrinsicHeight() ); Button button = new Button( this ); button.setText("Hello, I am a But..
Intent 기본사항 Intent 는 안드로이드에서 메시지를 전달하는 방법 중 하나이다. 서로 다른 Activity 간에 메시지 혹은 이벤트를 전달할 수 있다. (액티비티만을 해당하는 것이 아닌 백그라운드로 구동되는 서비스나 이벤트 수신을 기다리는 리시버들 에게도 메시지를 보낼 수 있다.) 관련함수 startActivity() startActivityForResult() startService() sendBroadcast() sendOrderedBroadcast() sendStickyBroadcast() Intent 객체는 이러한 메시지를 전달하기 위한 요소인데, 전달하는 형태에 따라 구성이 약간 달라진다. 1. 엑티비티의 실행 : 명시적호출 - 각 액티비티에 대해 해당 객체를 명확히 기술한다. Intent 객체의 생성자 :..
바이트오더~ 비트 스트림~ byte order ~ 바이트 오더~네트웍이나 비트 스트림에서 기본적으로 발생하는 실수 중에 하나이다~ 같은 나라 사람이라면 같은 말을 쓰면 되니 상관없지만다른 나라 사람들과 의사소통을 위해선 아무래도 공통적으로 쓰는 말을사용해야 한다. 하필이면 그것이 한국어,한글이 아닌 영어라서 문제지만 -_-;;; 네트워크 상의 데이터도 마찬가지~이놈들은 다른건 괜찮은데 short, long 같은 2byte 이상의 숫자에만서로 해석하는게 틀리다~ 이런저런거 다빼고~ 일단 유닉스 시스템은 빅엔디안 시스템이고, 인텔계열은 리틀엔디안 시스템이다. 빅엔디안이란 MSB 부터 부호화 되며,리틀엔디안이란 LSB 부터 부호화 된다. 또 뭔소리랴~말그대로 MSB 는 최상위 비트, LSB 는 최하위 비트를 뜻한다. MSB 부터 부호화..
delete obj, delete [] obj 차이 메모리 동적 할당을 위해 c++ 에서는 new,해제를 위해 delete를 사용한다. delete 구문 중에 delete [] 는 무슨 이유일까? * int 형 메모리를 할당과 해제하기 위해서는 pData = new int;delete pData; * int 형 100개의 메모리를 할당과 해제하기 위해서는 pData = new int[100];delete [] pData; 이거시 기본 문법(?) 이다. 이거야 다 아는 것이지만... 헌데 왜 저렇게 쓸까? 단순히 배열이기에 배열처럼 해제하려고?배열을 그냥 delete pData; 하면 해제가 안될까? 적어도 VC++ 에서는 잘된다.문제가 생기지도, 릭도 안생긴다~ 그럼 도대체 왜!!! 저렇게 쓸까? 그 이유는 new, delete가 클래스나 구조체등의 오브..
[C] 1. c style...............................................................................................................c 형태의 전역함수 void func(int a); // 함수원형void (*pCall)(int); // 함수포인터 ◎ note;리턴값 void, 인자 int 한개를 가지는 함수의 주소를 담는 변수를 pCall로 선언한다. ◎ 값넣기;pCall = func;pCall = &func; 두가지 모두 가능하나 2번째로 사용하는게 편리.첫번째는 함수의 호출과 혼돈할 여지가 있음. ◎ 호출;pCall(1);(*pCall)(1); 두가지 모두 가능. 2. c++ style...................