这真是一口。我有一个基本选项卡式活动两个选项卡,每个选项卡股用旋转器,其在每个标签的布局文件中声明的片段:Android Tabbed Activity - 将spinner值从嵌套片段传递到父级活动中的选项卡片段
表1:
<fragment android:name="com.me.fragment.DetailsFragment"
android:id="@+id/DetailsFragment1"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
表2:
<fragment android:name="com.me.fragment.DetailsFragment"
android:id="@+id/DetailsFragment2"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
当然,主选项卡活动类有两个嵌套的静态片段类;每个标签一个。
public class MyTabbedActivity extends FragmentActivity
{
public static class FirstTabFragment extends Fragment
{
//get value from DetailsFragment and "refresh" display values
}
public static class SecondTabFragment extends Fragment
{
//...
}
}
我试图通过在上述嵌套DetailsFragment旋转器的所选择的值,在标签式活动嵌套静态标签类,因此数据可以在其中进行过滤。
也就是说,当第一次加载活动时,默认的一组数据被调用并显示在选项卡中。当DetailsFragment中的微调器选择发生更改时,会将参数传递给选项卡类,并对数据进行过滤,并更改显示的值。
我能够通过接口将DetailsFragment中的值传递给主活动(MyTabbedActivity),但我不确定如何将该值传递给嵌套的FirstTabFragment和SecondTabFragment片段,并刷新/重新加载视图。
这样做的最好方法是什么?
@Zameron - 如果可能,我宁愿避免任何额外的库。这是需要吗?另一个接口侦听器将主活动的值传递给选项卡片段类? – 2015-03-30 18:18:51
是否所有的片段同时存在,或者是从细节片段获取值后开始片段? – Zamereon 2015-03-30 18:27:32
所有片段始终存在,没有任何片段正在根据更改的参数进行交换或更改。我使用顶部的微调来筛选标签片段内部的数据,都是。 – 2015-03-30 20:17:02