1. Intent là gì ?

Intents là một nguyên tố đặc biệt quan trọng vào android. Nó có thể chấp nhận được những nhân tố vận dụng có thể đề xuất những hàm trường đoản cú những thành phần áp dụng game android không giống. lấy một ví dụ một activity hoàn toàn có thể chạy một activity khác ngơi nghỉ bên phía ngoài để tự sướng.

Bạn đang xem: Intent là gì

Intents là 1 objects của game android.content.Intent. Intents sẽ tiến hành gửi cho hệ thống apk nhằm khẳng định hành vi bạn có nhu cầu triển khai, đối tượng bạn có nhu cầu cách xử lý.

Intents rất có thể bao gồm tài liệu thông qua Bundle. Bundle y hệt như một cái vỏ hộp. Bên dìm sẽ mngơi nghỉ bundle ra dựa vào key và lôi ra dữ liệu

*

2. Chạy một Activity

Để chạy một activity, thực hiện cách thức startActivity(intent). Phương thức này được khái niệm trong đối tượng người dùng context. Xem ví dụ dưới đây

Intent i = new Intent(this, ActivityTow.class); startActivity(i);Activitys mà lại được khởi chạy bởi một activitys không giống thì Call là sub-activityes

Ngoài lề: quý khách hàng cũng hoàn toàn có thể chạy services thông qua intents. Sử dụng hàm startService(Intent)

3. explicit intents với implicit intents

3.1. explicit intents

explicit intents dịch word by word thì có nghĩa là intent ví dụ. Các bạn hiểu dễ dàng và đơn giản explicit intents khẳng định rõ, rõ ràng những nguyên tố tđắm say gia hành động (hệt như ví dụ phần 2, nó chứng thực intent này dùng để start ActivityTow.class) hoặc hỏi hệ thống game android để ước lượng, đánh giá các thành phần đã được ĐK bên trên tài liệu của intent

explicit intents khẳng định một phương pháp ví dụ các yếu tố sẽ được Điện thoại tư vấn do khối hệ thống app android. lấy một ví dụ sau đây vẫn cho bạn biết có tác dụng cố gắng làm sao để tạo một intents cụ thể cùng gửi nó mang đến hệ thống game android để chạy một activity

Intent i = new Intent(this,ActivityTow.class); i.putExtra("Value1","This value one for ActivityTow"); i.putExtra("Value2","This value tow for ActivityTow");

3.2. implicit intents

Intents ẩn chứng thật hành động rất cần được thực hiệndữ liệu mang đến hành động. Nếu một intents ẩn được gửi cho khối hệ thống app android, nó đã kiếm tìm kiếm tất cả các yếu tố đã có được ĐK cho các hành động ví dụ (yếu tố dùng để start mẫu hành động đó) với loại tài liệu cân xứng. Nếu chỉ gồm một nguyên tố được tra cứu thấy, khối hệ thống app android đang start nhân tố này ngay lập tức mau chóng. Nếu tất cả một vài yếu tố được search thấy. Người dùng vẫn nhận được vỏ hộp thoại sàng lọc với yêu cầu quyết đinch yếu tắc như thế nào được áp dụng đến intents.

Xem thêm: Giao Thức Pppoe Là Gì ? Vai Trò Và Ứng Dụng Hoạt Động Của Pppoe

lấy ví dụ như, đoạn code sau đây sẽ hưởng thụ khối hệ thống app android để thấy một website.Tất cả những trình duyệt y website phải được đăng ký tương xứng vào dữ liệu intent trải qua bộ lọc intent

Intent i = new Intent(Intent.ACTION_VIEW,Uri.parse("http://www.vogella.com")); startActivity(i);

4. Truyền dữ liệu thân những activities

4.1. Truyền tài liệu cho nhân tố đích

Để truyền tài liệu cho intent, ta dùng thủ tục putExtras(). Xem vi dụ phần 3.1 Extras là một cặp key/value. key luôn luôn luôn là hình dáng string. value chúng ta cũng có thể áp dụng dạng hình tài liệu nguyên ổn thủy hoặc đối tượng của String, Bundle, ....

Thành phần tiếp nhận rất có thể lấy lại được đối tượng người tiêu dùng intent thông qua hàm getIntent(). Để lôi ra được tài liệu, tùy thuộc vào vẻ bên ngoài tài liệu chúng ta truyền rằng, sử dụng những cách làm getStringExtra(), getIntExtra();

Ví dụ:

Intent intent = new Intent(MainActivity.this, Main2Activity.class); Intent.putExtra(“name”,”Tran Minch Hai”); -------------------------------------------------------------------------------------------- Intent intent = getIntent(); String hoTen = intent.getStringExtra(“name”); // hoTen = “Tran Minch Hai”Ta rất có thể áp dụng đối tượng Bundle. Đóng gói toàn bộ tài liệu vào trong Bundle ngừng truyền Bundle mang lại Intentví dụ:

Intent mIntent = new Intent(MainActivity.this, Main2Activity.class);Bundle mBundle = new Bundle();mBundle.putString(key, value);mIntent.putExtras(mBundle);----------------------------------------------------------------------String value = getIntent().getExtras().getString(key);

4.2. Sử dụng intent phân chia sẻ

Có không ít ứng dụng app android chất nhận được các bạn chia sẻ tài liệu với những người khác, ví dụ: facebook, G+, Gmail... Quý Khách rất có thể gửi tài liệu tới một vài ba yếu tắc nào kia. ví dụ tiếp sau đây vẫn diễn tả việc áp dụng intent nlỗi vậy

Intent intent = new Intent(Intent.ACTION_SEND); intent.setType("text/plain"); intent.putExtra(game android.content.Intent.EXTRA_TEXT,"News for you!"); startActivity(intent);

4.3. Lấy lại kết quả tài liệu trường đoản cú sub-activity

Một activity hoàn toàn có thể được đóng lại trải qua button bachồng trên điện thoại thông minh. Trong trường thích hợp đó, hàm finish() sẽ được xúc tiến. Nếu activity đã có khởi chạy cùng rất hàm startActivity(intent), tín đồ call không quan trọng đề xuất bao gồm tác dụng hoặc phản hồi từ bỏ activity cơ mà rất có thể cthua thảm tức thì mau chóng.

Nếu chúng ta start một activity cùng với hàm startActivityForResult(), như vậy là bạn mong muốn bao gồm ý kiến tự sub-activity. Khi một sub-activity kết thúc, hàm onActivityResult() bên trên sub-activity sẽ tiến hành Điện thoại tư vấn với bạn có thể triển khai hành động dựa trên kết quả.

Trong hàm startActivityForResult(), bạn cũng có thể xác định hành vi các bạn sẽ khởi chạy. Hành đụng này các bạn sẽ ước muốn nhận về tác dụng. Một hành động đã có khởi chạy cũng hoàn toàn có thể thiết lập cấu hình một quãng mã code mà lại người điện thoại tư vấn có thể áp dụng nhằm xác minh hành động sẽ tiến hành cancel hoặc not

sub-activity thực hiện hàm finish() để tạo một intent new với truyền tài liệu cho nó. Nó cũng tùy chỉnh cấu hình kết quả trải qua hàm setResult

Ví dụ:

public void onClick(View view) Intent i = new Intent(this,ActivityTow.class); i.putExtra("value1","This value one for activityTow"); i.putExtra("Value2", "This value two ActivityTwo"); // mix the request code to lớn any code you like, // you can identify the callbaông chồng via this code startActivityForResult(i, REQUEST_CODE); Nếu chúng ta sử dụng hàm startActivityForResult(), thì sau khi start activity đang gọi mang đến sub-activity

Nếu hàm sub-activity hoàn thành, nó đang gửi dữ liệu mang lại cái vẫn điện thoại tư vấn nó trải qua intent. vấn đề đó được giải pháp xử lý trên hàm finish()

Bài viết liên quan

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *