Deperecated 120

안드로이드 - 메시징 - Toast

1. Toast란? - 안드로이드에서 간단하게 메세지를 표시할 때 사용한다. - 나타났다가 자동으로 사라지는 메세지 - 화면과 관련 없이 안드로이드 OS에게 메시지 출력을 요청하고 안드로이드 OS는 각 애플리케이션이 요청한 순서대로 메세지를 표시한다. 2. 주요 메서드 - makeText : 토스트 메시지 객체를 만든다. 화면 모양, 글자 크기 및 색상 등은 기본 설정되어 있는 것을 사용한다. - setGravity : 토스트 메시지가 표시될 위치를 설정한다. 3. 버튼을 눌러서 만들기. 1. 버튼의 리스너 설정 2. 리스너에 makeText // 1. 기본 토스트 메세지 출력 button2.setOnClickListener { view -> var t1 = Toast.makeText(this, "토스트..

안드로이드 - ActionBar

1. ActionBar는? - 화면 상단에 배치된 바 부분을 의미 - OptionMenu 항목의 일부를 배치할 수 있다. - OnCreateOptionMenu()로 생성 - OnOptionsItemSelected()로 옵션 메뉴 설정 - ActionBar에 나오는 애들은 menu.xml의 ShowasAction으로 설정 2. 구성방법 - OptionMenu를 사용하는 방법과 동일하며 ActionBar를 위한 속성 몇 가지를 설정한다. - Icon : ActionBar에 표시되는 아이콘을 설정한다. - showAsAction : ActionBar 배치 여부를 결정한다. - actionViewClass : 접었다 폈다 할 때 나타날 뷰를 설정한다. 3. showAsAction - Never(기본) : 메뉴를..

안드로이드 - PopupMenu

1. PopupMenu란? - 개발자가 원할 때 원하는 곳에 메뉴를 띄울 수 있다. 2. 리스너 OnMenuItemClickListner : 메뉴의 항목을 클릭했을 때 반응하는 리스너 // 팝업 메뉴에 리스너 설정(중첩 클래스) var listner = PopupListner() pop.setOnMenuItemClickListener(listner) inner class PopupListner:PopupMenu.OnMenuItemClickListener{ override fun onMenuItemClick(item: MenuItem?): Boolean { when(item?.itemId) { R.id.item1 -> textView.text = "지존" R.id.item2 -> textView.text ..

안드로이드 - ContextMenu

1. ContextMenu란? - 화면에 배치된 뷰에 설정할 수 있는 메뉴 - 메뉴가 설정된 뷰를 길게 누르면 메뉴가 나타난다. - 길게 눌러야 나오기 때문에 직관적인 메뉴가 아니고, 보통 리스트뷰에 넣어서 나온다. 2. registerForContext - 컨텍스트 메뉴를 등록하는 메서드 - 메서드의 매개 변수로 넣어준 뷰 객체에 컨텍스트 메뉴가 설정된다. 3. onCreateContextMenu - 뷰를 길게 누르면 컨텍스트메뉴가 호출되는 메서드 - 여기에서 컨텍스트 메뉴를 구성한다. 4. OnContextItemSelected - 사용자가 메뉴를 선택했을 때 호출되는 메서드 5. 생성 순서 1. 컨텍스트 메뉴를 뷰에 세팅 // 1. 컨텍스트 메뉴를 뷰에 세팅 registerForContextMenu..

안드로이드 - 메뉴 - OptionMenu

1. OptionMenu란? - 안드로이드에서 화면당 하나씩 가질 수 있는 메뉴를 의미한다. - 현재 보이는 화면(Activity)의 메인 메뉴가 된다. - 1. 코드로 생성하는 법, 2. xml로 추가하는 법이 있다. 1. xml로 추가하는법 1. res폴더 -> Android Resources File 추가 -> menu파일 생성하여 배치 override fun onCreateOptionsMenu(menu: Menu?): Boolean { //1. xml로 메뉴 생성 메뉴 생성은 menuInflater menuInflater.inflate(R.menu.optionmenu, menu) return true } override fun onOptionsItemSelected(item: MenuItem): ..

안드로이드 - ViewPager

1. ViewPager란? - 좌우로 스와이프 하며 View를 전환하는 AdapterView (Ex. 갤러리) - 화면이 바뀌는 것이 아닌 화면만한 뷰들이 전환되는 개념이다. - 따라서, ViewPager로 스와이프 시킬 View들의 리스트를 만들고 그 리스트를 관리해주어야 한다. // 1. 뷰리스트 생성 var view_list = ArrayList() // 2. 뷰리스트에 add. view_list.add(layoutInflater.inflate(R.layout.view1,null)) view_list.add(layoutInflater.inflate(R.layout.view2,null)) view_list.add(layoutInflater.inflate(R.layout.view3,null)) 2. A..

안드로이드 - Spinner

1. Spinner란? - 사용자에게 항목을 주고 선택하게 할 수 있는 AdapterView - 리스트뷰가 쫘락 나오고 사용자가 항목을 선택하면 팝업창으로 뜨는것이 Spinner. 2. 리스너 OnItemSelectedListner : 스피너에서 항목을 선택할 때 호출되는 리스너 // inner 클래스 var listener = SpinnerListener() spinner.onItemSelectedListener = listener // 익명 중첩 클래스 spinner2.onItemSelectedListener = object : AdapterView.OnItemSelectedListener { override fun onItemSelected( parent: AdapterView?, view: Vie..

안드로이드 - CustomAdapter

1. CustomAdapter란? - 리스트뷰를 사용할 때 특별한 기능을 추가해서 만들고 싶다면 Adapter 클래스를 직접 만들어 사용하면 된다. - Adapter 클래스를 만들 때는 BaseAdapter 클래스를 상속받아 작성한다. 2. 주요 메서드 getCount : 리스트뷰 내의 전체 항목의 개수를 반환한다. getView: 리스트 뷰 항목 하나를 구성하여 반환한다. (항목 하나의 모양) 리스트 뷰 항목 하나를 구성하기 위해 호출되는 메서드. 이 함수로 리턴되는 View로 리스트뷰 항목 하나를 구성. 예를들어 100만개의 항목 중 7개만 화면에 보인다고 하면 초기화 시에 7번 호출되었다가 스크롤 내리면서 새롭게 나타나는것만큼 그 항목을 구성하기 위해 호출된다. 이 때 보였다가 안보이게된 View는..

안드로이드 - CustomListView2

1. CustomListView란? - 리스트뷰를 구성할 때 항목 하나의 모양을 개발자가 직접 만들어 사용할 수 있다. - 항목 하나에 배치된 뷰 중 2개 이상의 뷰에 데이터를 셋팅 할 때는 SimpleAdaptor을 사용한다. 2. SimpleAdaptor - 두 개 이상의 뷰에 데이터를 세팅할 경우에는 SimpleAdaptor을 사용한다. - 심플어댑터 구조는 항목 하나를 구성할 객체들을 Hasmap 객체에 담는다. 그 Hashmap을 arraylist에 담는다. 그 arraylist를 어댑터에 세팅한다. 3. 어댑터 세팅 순서 리스트 항목 하나의 레이아웃을 만든다. ImageView에 들어갈 리소스를 drawable폴더에 넣는다. 안드로이드OS는 Drawable폴더에 있는 리소스를 사용할 때 리소스..

안드로이드 - CustomListView

1. CustomListView란? - 리스트뷰의 항목들을 내가 원하는 레이아웃 형태로 만들 수 있다. - 문자열 하나만 항목에 넣을 경우 "ArrayAdator"을 쓰면 된다. 기본 레이아웃의 리스트 항목을 두 번째 레이아웃의 형태로 만들고싶다! 2. 어댑터 연결 - 리스트 항목에 문자열만 있으므로 ArrayAdaptor 사용. - 안드로이드가 알고있는 레이아웃을 할 때는 레이아웃, 데이터만 전달해줘도 된다. - 하지만 내가 만든 레이아웃(row1)을 사용할 때는 리스트항목의 id(textview2)를 안드로이드에게 알려줘야한다. // 1.안드로이드가 알고있는 레이아웃을 할때는 레이아웃, 데이터만 전달해줘도된다. // 2. 하지만 내가 만든 레이아웃(row1)을 사용할 때는 이 데이터를 넣을 곳(리스트..