wasup
Android) Activity, Intent 본문
반응형
Activity
사용자 인터페이스를 만들지만 자체 출력기능이 없음
*새로운 Activity를 만들기 위해서는 Manifest(매니페스트)에 추가해줘야함.
Intent
액티비티끼리 호출하기 위해 필요한 장치
무엇을 호출해서 무슨 작업을 시킬것인지 명시.
Intent() //디폴트 생성자
Intent(Intent i) // 복사 생성자
Intent(Intent.ACTION_VIEW, Uri.parse("") // 가장 많이 사용하는 생성자
명시적 Intent
: 가장 많이 볼 수 있는 방법
: 앱의 화면전환
Intent intent = new Intent(Activity.this, Activity2.class);
startActivity(intent);
암시적 Intent
: Intent의 Action에 따라 해당하는 적합한 애플리케이션 클래스를 호출.
: 암시적 인텐트는 웹브라우저 호출, 이메일전송, 전화앱으로 이동 등이 가능.
참고링크1 : ( https://whatisthenext.tistory.com/64 )
참고링크1 : ( https://sharp57dev.tistory.com/18 )
new project name : book01_240
res>values>strings.xml의 string을 값으로 가져다 쓸 수 있다.
strings.xml
<resources>
<string name="app_name">book</string>
<string name="strBtn1">버튼입니다</string>
</resources>
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<Button
android:id="@+id/button01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/strBtn01"
>
</Button>
</androidx.constraintlayout.widget.ConstraintLayout>
MainActivity.java
public class MainActivity extends AppCompatActivity {
Button button1; //변수
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button1 = (Button) findViewById(R.id.button01);
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(), "버튼을 눌렀어요",
Toast.LENGTH_SHORT).show();
}
});
}//onCreate-end
}//class-end
new project name : book02_240
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<Button
android:id="@+id/btnNate"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#ff0000"
android:text="네이트 홈페이지 열기" />
<Button
android:id="@+id/btn911"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#00ff00"
android:text="911 응급전화 걸기" />
<Button
android:id="@+id/btnGal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#ff00ff"
android:text="갤러리 열기" />
<Button
android:id="@+id/btnEnd"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#00ffff"
android:text="끝내기" />
</LinearLayout>
MainActivity.java
package com.example.book02_240;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.graphics.Color;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class MainActivity extends AppCompatActivity {
Button btnNate, btn911, btnGal, btnEnd;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btnNate = (Button) findViewById(R.id.btnNate);
btn911 = (Button) findViewById(R.id.btn911);
btnGal = (Button) findViewById(R.id.btnGal);
btnEnd = (Button) findViewById(R.id.btnEnd);
btnNate.setBackgroundColor(Color.GRAY);
btn911.setBackgroundColor(Color.GREEN);
btnGal.setBackgroundColor(Color.RED);
btnEnd.setBackgroundColor(Color.YELLOW);
btnNate.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Intent mIntent = new Intent(Intent.ACTION_VIEW, Uri
.parse("http://m.nate.com"));
startActivity(mIntent);
}
});
btn911.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Intent mIntent = new Intent(Intent.ACTION_VIEW, Uri
.parse("tel:/911"));
startActivity(mIntent);
}
});
btnGal.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Intent mIntent = new Intent(Intent.ACTION_VIEW, Uri
.parse("content://media/internal/images/media"));
startActivity(mIntent);
}
});
btnEnd.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
finish();
}
});
}//onCreate() end
}//class end
반응형
'IT > Android' 카테고리의 다른 글
Android) 자동완성 텍스트뷰 예제 (0) | 2021.08.06 |
---|---|
Android) 시계와 캘린더 예제 (0) | 2021.08.05 |
Andriod) 기본 위젯 TextView, Button, RadioGroup, RadioButton, EditText (0) | 2021.08.05 |
Android) ScrollView (0) | 2021.08.05 |
Android) 요소배치, 클릭시 이미지 변경 (0) | 2021.08.04 |
Comments