Contents
- 11.เรียกใช้งานแอคทิวิตี้อื่น
- 1.1activity_main.xml
- 1.2MainActivity.java
- 1.3activity_second.xml
- 22.เรียกใช้งานแอคทิวิตี้อื่นพร้อมส่งข้อมูลไปให้
- 2.1activity_main.xml
- 2.2MainActivity.java
- 2.3activity_second.xml
- 2.4SecondActivity.java
- 33.ส่งข้อมูลกลับมาให้แอคทิวิตี้ต้นทาง
- 3.1activity_main.xml
- 3.2MainActivity.java
- 3.3activity_second.xml
- 3.4SecondActivity.java
1.เรียกใช้งานแอคทิวิตี้อื่น
เพิ่มแอคทิวิตี้ชื่อ SecondActivity
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:id="@+id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.phaisarn.jackapplication.MainActivity"> <Button android:id="@+id/my_button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Click1" /> </LinearLayout>
MainActivity.java
package com.phaisarn.jackapplication; import android.content.Intent; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button myButton1 = (Button) findViewById(R.id.my_button1); myButton1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Intent intent = new Intent(getApplicationContext(), SecondActivity.class); startActivity(intent); } }); } }
activity_second.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:id="@+id/activity_second" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.phaisarn.jackapplication.SecondActivity"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="This is second activity." /> </LinearLayout>
2.เรียกใช้งานแอคทิวิตี้อื่นพร้อมส่งข้อมูลไปให้
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:id="@+id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.phaisarn.jackapplication.MainActivity"> <EditText android:id="@+id/editText1" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" /> <Button android:id="@+id/my_button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Click1" /> </LinearLayout>
MainActivity.java
package com.phaisarn.jackapplication; import android.content.Intent; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditText; public class MainActivity extends AppCompatActivity { public static final String MESSAGE1 = "Message1"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button myButton1 = (Button) findViewById(R.id.my_button1); myButton1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { EditText editText = (EditText) findViewById(R.id.editText1); String msg = editText.getText().toString(); Intent intent = new Intent(getApplicationContext(), SecondActivity.class); intent.putExtra(MESSAGE1, msg); startActivity(intent); } }); } }
activity_second.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:id="@+id/activity_second" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.phaisarn.jackapplication.SecondActivity"> <TextView android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="This is second activity."/> </LinearLayout>
SecondActivity.java
package com.phaisarn.jackapplication; import android.content.Intent; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.widget.TextView; public class SecondActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_second); Intent intent = getIntent(); String msg = intent.getStringExtra(MainActivity.MESSAGE1); TextView textView = (TextView) findViewById(R.id.textView2); textView.setText(msg); } }
3.ส่งข้อมูลกลับมาให้แอคทิวิตี้ต้นทาง
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:id="@+id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.phaisarn.jackapplication.MainActivity"> <Button android:id="@+id/my_button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Click1" /> </LinearLayout>
MainActivity.java
package com.phaisarn.jackapplication; import android.content.Intent; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.Toast; public class MainActivity extends AppCompatActivity { public static final String MESSAGE2 = "Message2"; public static final int CODE = 1; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button myButton1 = (Button) findViewById(R.id.my_button1); myButton1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Intent intent = new Intent(getApplicationContext(), SecondActivity.class); startActivityForResult(intent, CODE); } }); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent intent) { if (requestCode == CODE) { if (resultCode == RESULT_OK) { String msg = intent.getStringExtra(MESSAGE2); Toast.makeText(this, msg, Toast.LENGTH_SHORT).show(); } } } }
activity_second.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:id="@+id/activity_second" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.phaisarn.jackapplication.SecondActivity"> <EditText android:id="@+id/editText2" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" /> <Button android:id="@+id/my_button2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Return" /> </LinearLayout>
SecondActivity.java
package com.phaisarn.jackapplication; import android.content.Intent; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditText; public class SecondActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_second); Button myButton2 = (Button) findViewById(R.id.my_button2); myButton2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { EditText editText = (EditText) findViewById(R.id.editText2); String msg = editText.getText().toString(); Intent intent = new Intent(); intent.putExtra(MainActivity.MESSAGE2, msg); setResult(RESULT_OK, intent); finish(); } }); } }