<할 것>
ㅇ웹 페이지를 표시하는 방법 등을 배운다.
ㅇ메뉴 사용법 - 옵션 메뉴, 컨텍스트 메뉴
ㅇ웹 페이지 주소를 공유하는 방법 - 암시적 인텐트
<이용>
Anko라이브러리
복습 : Anko Commons : 인텐트, 다이얼로그, 로그 등을 편리하게 사용하는 라이브러리
<중간 에러>
웹페이지를 사용할 수 없음
다음 이유로.
net::ERR_CLEARTEXT_NOT_PERMITTED
--> AndroidMenifest.xml에 <application ... > 안에 android:usesCleartextTraffic="true"를 추가
<메뉴 관련>
안드로이드의 모든 메뉴는 메뉴 리소스 작성부터 시작.
ㅇ메뉴 리소스 파일 생성
File - New - Android Resource Directory -> Resouce type : Menu
그리고 프로젝트 창 보면 res아래에 menu디렉토리 생성된다. 그럼 또 다시 menu 디렉토리 클릭 후
File - New - Menu resource file -> File name에 main입력 후 OK
그럼 menu 아래에 main.xml이 생성된다.
컴포넌트 트리의 menu에다가 팔레트의 Menu Item을 배치 -> 메뉴아이템이 추가되었다.
아 이제 내가 찾던 그게 보이네!!ㅜㅜ
이런 식으로 쉽게 메뉴작성 가능
+컨텍스트 메뉴 : 특정 뷰를 길게 클릭하고 있으면 표시되는 메뉴.
암시적 인텐트
안드로이드에는 미리 정의된 인텐트들이 있다 --> 암시적 인텐트
암시적 인텐트의 형태는 대부분 이렇다
예시1) 전화 앱에 번호 입력
val intent = Intent(Intent.ACTION_DIAL)
intent.data = Uri.parse("tel:010-1111-1111")
if (intent.resolveActivity(packagemanager) != null) {
startActivity(intent)
}
예시2) 문자열 보내기
val intent = Intent(Intent.ACTION_SEND)
intent.apply {
type = "text/plain"
putExtra(Intent.EXTRA_TEXT, "보낼 문자열")
var chooser = Intent.createChooser(intent, null)
if (intent.resolveActivity(packageManager) != null) {
startActivity(chooser)
}
}
예시3) 웹 브라우저 띄우기
val intent = Intent(Intent.ACTION_VIEW)
intent.data = Uri.parse("http://www.example.com")
if (intent.resolveActivity(packageManager) != null) {
startActivity(intent)
}
+ 더 많은 참고는 아래 링크 +
http://developer.android.com/guide/components/intents-common
Anko 라이브러리를 활용한 암시적 인텐트
- 훨씬 쉽게 암시적 인텐트를 활용가능하다.
- 복잡한 인텐트 사용을 획기적으로!! 단 한줄.
Anko에서 지원하는 암시적 인텐트 기능 (안드로이드 생존코딩 224페이지 참조)
종류 | 코드 |
전화 걸기 | makeCall(전화번호) |
문자 보내기 | sendSms(전화번호, [문자열]) |
웹 브라우저에서 열기 | browse(url) |
문자열 공유 | share(문자열, [제목]) |
이메일 보내기 | email(받는 메일주소, [제목], [내용]) |
[]는 옵션
-안드로이드 생존코딩 中-
(여러분~! 이 책이 안드로이드 모르는 상태에서 공부하기 좋네요 속도도 붙고~! 저는 강추~!)
전화걸기는 Anko에서 지원하는 방법을 사용하지 않았다.
-전화걸기는 별도 권한을 추가해야 한다.
-다이얼 입력까지만 제공하고 사용자가 스스로 전화를 걸면 된다.
그래서 Anko에서 지원해주는 암시적 인텐트 코드를 추가하여, 메뉴와 암시적 인텐트를 연동해주었다.
챕터 끝냈다!
MainActivity 요약, 한눈에 정리해보기
간단히 이렇게 정리해봤다!!
어떤 구조인지 기억에 쏙쏙 남는돠
웹 뷰 - 웹 페이지를 표시하는 뷰 - 인터넷 권한 필요
메뉴 : 메뉴 리소스 파일을 작성하여 간단히 메뉴를 구성한다. (File - New - ... )
- 옵션 메뉴
- 컨텍스트 메뉴
Anko를 사용하여 암시적 인텐트를 쉽게 활용 가능하다. (문자 보내기, 이메일 보내기 등..)
다른 액티비티를 활용하는 암시적 인텐트.
지나가시는분들 하트 꾹 눌러주세욘! ^-^
'JAVA' 카테고리의 다른 글
안드로이드 - 챕터8, 수평 측정기 (0) | 2021.01.14 |
---|---|
[안드로이드] 늦은 초기화 방법 (0) | 2021.01.12 |
안드로이드 - 챕터6, 스톱워치 (0) | 2021.01.07 |
[한빛미디어] 안드로이드 생존코딩(오준석) + 챕터5 BMI (0) | 2020.12.29 |
혼공자 - 마지막 프로젝트도 끝냈다! (14챕터 확인문제 1번) (0) | 2020.08.20 |