片段分析片段来自android studio中的位置

时间:2018-07-10 08:04:38

标签: java android android-fragments

我有一种方法,可以将片段作为输入参数发送给该方法:

public static void ApishowdetailProducts(final int id, final Fragment 
fragment){}

因此,在这种方法中,我想分析该片段是哪个片段>>,我的意思是它来自哪里:片段首页或片段搜索。

我通过创建如下对象来对其进行测试:

 final Fragment fh=new FragmentHome();
 final Fragment fs=new FragmentSearch();
 final View v=fragment.getView();

 if (fragment.equals(fs))
 {;}
  if(fragment==fs)
 {;}

但是它不起作用,也不要输入if。

1 个答案:

答案 0 :(得分:1)

您要寻找的是instanceof

public static void ApishowdetailProducts(final int id, final Fragment fragment) {
    if (fragment instanceof FragmentHome) {
        // Is FragmentHome
    } else if (fragment instanceof FragmentSearch){
        // Is FragmentSearch
    }
}

Equals将不起作用,因为您为fhfs创建了新实例。请参阅here,以获取有关为何此操作无效的详细说明。