[英]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.