Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 将参数传递给XML中声明的片段_Android_Android Fragments - Fatal编程技术网

Android 将参数传递给XML中声明的片段

Android 将参数传递给XML中声明的片段,android,android-fragments,Android,Android Fragments,我用ListFragment构建了一个简单的应用程序,其结构如下: 片段从ListFragment扩展而来 单列片段 双列表片段 活动从碎片活动扩展而来 主要活动 详细活动 当前逻辑已定义:在MainActivity中,用户单击OneListFragment中的项,启动DetailActivity,我需要将DetailActivity中的额外内容传递给TwoListFragment,但我不知道如何传递 public void onItemClick(AdapterView<?>

我用ListFragment构建了一个简单的应用程序,其结构如下:

片段从ListFragment扩展而来

  • 单列片段
  • 双列表片段
活动从碎片活动扩展而来

  • 主要活动
  • 详细活动
当前逻辑已定义:在MainActivity中,用户单击OneListFragment中的项,启动DetailActivity,我需要将DetailActivity中的额外内容传递给TwoListFragment,但我不知道如何传递

public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
    final Cursor c = (Cursor) mAdapter.getItem(position);

    final Intent intent = new Intent(getActivity(), DetailActivity.class);
    intent.putExtra(KEY, c.getString(0));
    startActivity(intent);
}

只需在ListActivity中使用putExtra,然后在TwoListFragment中使用getActivity().getIntent().get***Extra()~

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <fragment
        android:id="@+id/detailed_list"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        class="com.package.TwoListFragment" />
</LinearLayout>