이 글에서는 어플리케이션에서 많이 써보았던 그 메뉴에 대해 적는다. 메뉴를 사용하기 전에, 현재 프로젝트의 app/res/ 에서 menu 디렉토리가 존재하는지 확인해본다. 없는 경우, app을 오른쪽 클릭하고, New > Android resource directory Resource type을 menu로 고르고 OK 해서 디렉토리를 추가해주어야 한다. 디렉토리가 생겼으면, menu폴더를 오른쪽 클릭해서 Menu resource file을 추가하면 된다. 이제 메뉴의 구성요소를 보겠다. 1. 메뉴종류/ 메소드 OptionsMenu : 타이틀 옆의 ...(메뉴버튼)을 눌러서 작동하는 기본적인 메뉴. java파일에서 메소드 onCreateOptionsMenu() onOptionsItemSelected() 를 입력하면 자동으로 오버라이딩해준다. 이때 자신이 부르고싶은 메뉴파일이 menu2.xml일 경우, getMenuInflater().inflate(R.menu. menu2 , menu) ; 를 onCreateOptionsMenu() 내에 작성하면 메뉴가 장착된다. onOptionsItemSelected() 메뉴의 Item을 선택했을때 동작을 정의할수있다. Item은 item.getItemid()로 알아낼수 있다. OptionsMenu를 사용하여 구현한 메뉴. 모양은 ContextMenu도 동일하다. ContextMenu : 특정 위젯을 길게 누르면 나오는 메뉴. java파일에서 메소드 onCreateContextMenu() onContextItemSelected() 를 입력하면 자동으로 오버라이딩해준다. 이때 어떤 위젯을 누르면 나오게할지 설정해야한다. 예로, TextView로 선언한 text 위젯에서 menu2를 부르겠다면, if (v == text) getMe...
이 글에서는 안드로이드의 Networking 실습을 한 내용을 다룬다. 소켓 프로그래밍 소켓을 이용하여 안드로이드 앱과 통신을 주고받는 모습. 기본적으로 안드로이드에서는 TCP/IP방식의 소켓을 사용하여 통신을 한다. 이 소켓을 사용하기 위해 서버와 클라이언트의 개발이 필요하다. 실시간으로 처리해야하는 데이터가 있다면, HTTP보다 소켓 통신이 우월하다. 안드로이드에서 소켓을 이용할때는 표준 자바 소켓을 그대로 사용가능하다. 서버에는 아래처럼 서버 포트를 이용한 소켓을 만들어 둔다. int SERVER_PORT = 200 ; ServerSocket server = new ServerSocket(SERVER_PORT); System . out . println ( "Server]서버가 실행됨. 포트 : " + SERVER_PORT); cs 클라이언트에서는 서버 소켓으로 연결하기 위해 서버 IP와 포트를 사용한 소켓을 만든다. String SERVER_IP = "localhost" ; int SERVER_PORT = 200 ; Socket aSocket = new Socket(SERVER_IP, SERVER_PORT); System . out . println ( "Client] 서버 접속" ); cs 위처럼 기본적인 소켓 설정을 한 이후에는 InputStream/OutputStream을 이용해 통신하면 된다. 웹페이지 요청 HttpURLConnection을 이용하여 구글 홈페이지의 html문서를 텍스트 형태로 받은 모습. 안드로이드에서는 URL Class를 통해 U...
댓글
댓글 쓰기