[英]Android - How to Pass Extra data with Intent to ListFragment?
當我想使用“ intenet put extra”傳輸字符串時出現錯誤,似乎第二個活動傳遞失敗
主要活動
公共無效AbrirLista(){
Conversation conversationForUserList = pagerAdapter.getItem(pager.getCurrentItem());
if (conversationForUserList.getType() == Conversation.TYPE_CHANNEL) {
Intent intent = new Intent(this, SecondActivity.class);
intent.putExtra(
Extra.USERS,
binder.getService().getConnection(server.getId()).getUsersAsStringArray(conversationForUserList.getName()));
startActivityForResult(intent, REQUEST_CODE_USERS);
} else {
Toast.makeText(this, getResources().getString(R.string.only_usable_from_channel), Toast.LENGTH_SHORT).show();
}
drawerLayout.openDrawer(drawerView);
}
第二活動
public class SecondActivity extends ListFragment {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
final String[] users = getActivity().getIntent().getExtras().getStringArray(Extra.USERS);
ListAdapter myListAdapter = new ArrayAdapter<String>(getActivity(),
android.R.layout.simple_list_item_1, users);
setListAdapter(myListAdapter);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
return inflater.inflate(R.layout.list, container, false);
}
}
Conversation conversationForUserList = pagerAdapter.getItem(pager.getCurrentItem());
Intent intent = new Intent(this, SecondActivity.class);
intent.putExtra("name_id",conversationForUserList);
startActivity(intent);
// get data to SecondActivity.class
private Context context;
private Conversation userList;
private ArrayList<Conversation> users;
userList = (Conversation) getActivity().getIntent().getSerializableExtra("name_id");
users=conversationForUserList.getName(context);
ListAdapter myListAdapter = new ArrayAdapter<String>(getActivity(),
android.R.layout.simple_list_item_1, users);
setListAdapter(myListAdapter);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.