[Android] Intent
์ธํ ํธ
: Application ์ปดํฌ๋ํธ ๊ฐ์ ์์ ์ํ์ ์ํ ์ ๋ณด๋ฅผ ์ ๋ฌํ๋ ์ญํ
- startActivity(): ์กํฐ๋นํฐ๋ฅผ ํ๋ฉด์ ๋์ธ ๋
- startService(): ์๋น์ค๋ฅผ ์์ํ ๋
- broadcastIntent(): ๋ธ๋ก๋์บ์คํ ์ ์ํํ ๋
์ธํ ํธ์ ๊ธฐ๋ณธ ๊ตฌ์ฑ ์์
-
- ์ก์
- ์ํํ ๊ธฐ๋ฅ
- ์) ACTION_VIEW, ACTION_EDIT โฆ
-
- ๋ฐ์ดํฐ
- ์ก์ ์ด ์ํ๋ ๋์ ๋ฐ์ดํฐ
-
- Extra Data
- ์ถ๊ฐ์ ์ธ ์ ๋ณด๋ฅผ ๋ฃ์ ์ ์๋ Bundle ๊ฐ์ฒด
ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย Intent(Action + Data)
์กํฐ๋นํฐA โโโโโโโโโโโ> ์กํฐ๋นํฐB
๋ช ์์ ์ธํ ํธ / ์์์ ์ธํ ํธ
๋ช ์์ ์ธํ ํธ
: ์ธํ ํธ์ ํด๋์ค ๊ฐ์ฒด๋ ์ปดํฌ๋ํธ ์ด๋ฆ์ ์ง์ ํ์ฌ ํธ์ถํ ๋์์ ํ์คํ ์ ์ ์๋ ๊ฒฝ์ฐ
MainActivity.java
public void mOnClick(View v) {
switch (v.getId()) {
case R.id.btnedit:
Intent intent = new Intent(this, ActEdit.class);
intent.putExtra("TextIn", mText.getText().toString());
startActivityForResult(intent, ACT_EDIT);
break;
}
}
์์์ ์ธํ ํธ
: ์ก์
๊ณผ ๋ฐ์ดํฐ๋ฅผ ์ง์ ํ๊ธด ํ์ง๋ง ํธ์ถํ ๋์์ด ๋ฌ๋ผ์ง ์ ์๋ ๊ฒฝ์ฐ
์๋๋ก์ด๋ ์์คํ
์ด ์ธํ
ํธ๋ฅผ ์ด์ฉํด ์์ฒญํ ์ ๋ณด๋ฅผ ์ฒ๋ฆฌํ ์ ์๋ ์ ์ ํ ์ปดํฌ๋ํธ๋ฅผ ์ฐพ์๋ณธ ๋ค์,
์ฌ์ฉ์์๊ฒ ๊ทธ ๋์๊ณผ ์ฒ๋ฆฌ ๊ฒฐ๊ณผ๋ฅผ ๋ณด์ฌ์ฃผ๋ ๊ณผ์
- Category: ์ก์ ์คํ์ ํ์ํ ์ถ๊ฐ์ ์ธ ์ ๋ณด
- Type: ์ธํ ํธ์ ๋ค์ด๊ฐ๋ ๋ฐ์ดํฐ์ MIME ํ์
- Component: ์ธํ ํธ์ ์ฌ์ฉ๋ ์ปดํฌ๋ํธ ํด๋์ค ์ด๋ฆ
MainActivity.java
public void mOnClick(View v) {
switch (v.getId()) {
case R.id.btnedit:
Intent intent = new Intent(Intent.ACTION_EDIT);
intent.putExtra("TextIn", mText.getText().toString());
startActivityForResult(intent, ACT_EDIT);
break;
}
}
AndroidManifest.xml
<activity android:name=".ActEdit" android:label="Edit">
<intent-filter>
<action android:name="android.intent.action.EDIT"/>
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
์ธํ ํธ ํํฐ
์์คํ
์ด ์์ฒญํ๋ ์ธํ
ํธ์ ์ ๋ณด๋ฅผ ๋ฐ์ ์ฒ๋ฆฌํ ์ดํ๋ฆฌ์ผ์ด์
๊ตฌ์ฑ ์์๋ฅผ ์ฐพ๊ธฐ ์ํด ํ์ํ ์ ๋ณด
์ธํ
ํธ ํํฐ์ ์ก์
์ ๋ณด = ์ธํ
ํธ ํํฐ์ ์ง์ ํ ์ธํ
ํธ๋ง ์ ๋ฌ๋ฐ๊ฒ ๋ค๋ ์๋ฏธ
[์ฐธ๊ณ ]
์๋๋ก์ด๋ ํ๋ก๊ทธ๋๋ฐ ์ ๋ณต 1,2๊ถ
Do it! ์๋๋ก์ด๋ ์ฑ ํ๋ก๊ทธ๋๋ฐ
Android Developers
Comments