2013-04-17 32 views

Trả lời

4

Trước ft.replace(R.id.fragment_content, fragment, fargmentTag); thêm dòng sau:

fragment.setArguments(bundle).

+0

làm thế nào để nhận được chúng ở đầu bên kia – user1730789

+1

@ user1730789: getArguments() sẽ lấy bó bạn thiết lập ở trên. – hwrdprkns

0

Trước khi gọi replace chỉ cần thêm fragment.setArguments(bundle)

6

Hãy thử điều này:

Anywhere bên trong lớp FragmentActivity của bạn, đặt này:

MyFragmentClass mFrag = new MyFragmentClass(); 
Bundle bundle = new Bundle(); 
bundle.putString("DocNum", docNum); //parameters are (key, value). 
mFrag.setArguments(bundle); 

getSupportFragmentManager().beginTransaction().replace(R.id.page_fragments, mFrag).commit(); 

Tôi đang sử dụng “nhập khẩu android.support.v4.app .FragmentActivity; ”vì vậy tôi sử dụng“ getSupportFragmentManager() ”. Vì vậy, để tóm tắt mã ở trên, bạn đã tạo một thể hiện bó và một thể hiện của đoạn của bạn. Sau đó, bạn liên kết hai đối tượng với “mFrag.setArguments (bundle)”. Vì vậy, bây giờ "bó" được liên kết với trường hợp đó của MyFragmentClass của bạn. Vì vậy, bất cứ nơi nào trong MyFragmentClass của bạn, lấy bó bằng cách gọi:

Bundle bundle = getArguments(); 
String mDocNum = bundle.getString("DocNum"); 
Các vấn đề liên quan