/ 기록용이라 사담이 많을 수 있습니다. 해당 애플리케이션을 개발하면서 겪은 일과 느낀점, 문제점을 적었습니다. / 실장님께서 첫 번째 과제로 소켓 통신을 이용한 안드로이드 채팅 애플리케이션을 만들어보라고 하셨다. 첫날은 소켓 없이 firebase라는 걸로 채팅을 만들려고 했었는데, 다음 날 소켓 통신으로 구현해야 한다고 말씀해 주셔서 첫날은 사실상 "firebase에 대해서 알게 된 걸로" 치고 넘어갔다. 둘째 날은 그래서 구글에 '소켓', '소켓 통신 서버' 별의별 키워드를 다 쳐보면서 구글에 올라온 여러 코드들을 우선 쳐보고 돌렸다. 간만에 내가 예전에 네이버 블로그에 올렸던 JAVA 카테고리의 'TCP/IP 예제'로 올린 소켓 채팅 프로그램 https://varyeun.blog.me/2..
뷰페이저 : 좌우 스크롤을 통해 여러 개의 화면을 전환할 수 있도록 만든 것 뷰페이저 안에 들어가는 각각의 화면은 프래그먼트로 만들 수 있으며 어댑터 패턴을 사용하여 프래그먼트들을 관리할 수 있다. 페이저타이틀스트립(PageTitleStrip) : 프래그먼트의 총 개수와 현재 보고 있는 프래그먼트가 몇 번째 프래그먼트인지 아이콘으로 간단하게 알 수 있도록 해주는 것 (탭스트립을 사용하면 탭 모양으로 구분하여 보여준다.) MainActivity.java package com.example.mypager; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.appcompat.app.AppCompatAc..
우선 dependency에 design 추가하고 gradle에서 싱크를 맞춰준다. 이렇게 - 나는 에러가 나서 에러메시지대로 minSdkVersion을 21로 올려줬고 - 밑에 보면 design 의 버젼은 현재 targetSdkVersion인 29로 맞춰줬다 그리고 탭을 만들어주는거기때문에 처음 메인액티비티 만들 때 디폴트로 생성되는 액션바는 없애준다. 밑에 No로 하면 됨. fragment1, 2, 3 . java fragment1, 2, 3 숫자만 바꿔준다 MainActivity.java package com.example.mytap; import androidx.appcompat.app.AppCompatActivity; import androidx.fragment.app.Fragment; impor..
메뉴 속성 중에 app:showAsAction= always : 메뉴 아이콘 항상 보여줌 never : 절대로 액션바에 표시하지 않음 ifRoom : 표시할 수 있는 공간이 존재하면 표시 withText : 메뉴의 아이콘과 텍스트를 같이 표시 activity_main.xml >> 그대로 MainActivity.java package com.example.myoptionmenu; import androidx.annotation.NonNull; import androidx.appcompat.app.ActionBar; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.view.Menu; import ..
ListFragment.java package com.example.myfragment2; import android.content.Context; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.Button; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.fragment.app.Fragment; public class ListFragment extends Fragment { MainActiv..
서비스 : 애플리케이션 구성요소로 화면 없이 백그라운드에서 실행되는 하나의 단위 - startService 메소드를 호출할 때도 인텐트 객체를 파라미터로 전달해야 하며 이 인텐트 객체는 시스템으로 전달된 후 시스템에서 지정한 서비스를 만들고 실행하는 과정을 거치게 된다. - onStartCommand 메소드가 호출되면 인텐트 객체를 파라미터로 전달받을 수 ㅇ, 따라서 인텐트 안에 들어있는 명령이나 데이터를 확인하여 필요한 기능을 수행할 수 ㅇ - 서비스에서 액티비티로 인텐트를 보낼 때 액티비티에서 onNewIntent 메소드가 자동으로 호출된다. MainActivity.java package com.example.myservice; import androidx.appcompat.app.AppCompatA..
onPause : 화면이 눈에서 보이지 않게 될 때 항상 호출되므로 이때 데이터 저장해두기 가능 onResume: 화면이 다시 보일 때 항상 호출되므로 저장해 둔 데이터 가져와 화면에 설정하기 가능 package com.example.mycycle; import androidx.appcompat.app.AppCompatActivity; import android.app.Activity; import android.content.SharedPreferences; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.Toast; public class MainActivity e..
1. 액티비티 A에서는 인텐트 객체를 만들고 put...메소드를 이용해 부가데이터를 넣어준다. 2. startActivityForResult 메소드를 호출한다. 3. 액티비티 B가 실행된 후 setResult 메소드를 호출하면서 인텐트를 전달하고 finish 메소드를 호출하면 액티비티 A로 돌아온다. 4. 액티비티 B에서도 인텐트 안에 부가데이터를 넣어 전달할 수 있는데 이 인텐트는 액티비티 A의 onActivityResult 메소드가 호출되면서 전달받을 수 있다. ArrayList로 구현한 부분 -> Serializable 이용 SimpleData로 구현한 부분 ->Parceable 이용 SimpleData.java package com.example.myparcelable; import android..
액티비티 구성 과정 1. 새로운 액티비티 만들기 app>new ~ 2. 새로운 액티비티의 XML 레이아웃 정의하기 3. 메인 엑티비티에서 새로운 액티비티 띄우기 4. 새로운 액티비티에서 응답 보내기 5. 메인 액티비티에서 응답 처리하기 인텐트 : 시스템으로 전달되는 일종의 명령을 담고 있는 객체. 인텐트 안에 들어있는 명령이나 데이터를 시스템에서 이해한 후에 시스템이 어떤 일을 해주게 되는 식 안드로이드에서 전화 걸기 연결하는 법 ACTION_DIAL을 쓰면 된다!
MainActivity.java package com.example.myspinner; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.Spinner; import android.widget.TextView; import java.lang.*; import org.w3c.dom.Text; public class MainActivity extends AppCompatActivity { TextView textVi..
- Total
- Today
- Yesterday
- 페이저타이틀스트립
- Objective-C
- 상태드로어블
- 전화걸기연결
- 카카오톡열기
- prepareforreuse
- subscript
- CaseIterable
- 인플레이터
- 전화연결하기
- allcases
- swift
- 어댑터
- 액션바
- 표현패턴
- 쉐이프드로어블
- ios
- 안드로이드
- 스낵바설정
- 프래그먼트
- 뷰페이저
- 제스처디텍터
- 다이얼연결
- 터치리스너
- 알림대화상자
- 부가데이터
- 비트맵버튼
- 프래그먼트매니저
- 데이터
- objc
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |