什么是android.content.pm.ActivityInfo.name()等效的Android Fragment进程

时间:2017-08-07 07:49:54

标签: android android-fragments

在我的Android活动中,我可以将此代码放在onCreate()方法中以获取当前的Activity名称: -

final PackageManager packageManager = this.getPackageManager();
try {
    final ActivityInfo activityInfo = packageManager.getActivityInfo(this.getComponentName(), 0);
    Log.d(TAG, "onCreate: " + activityInfo.name);
} catch (PackageManager.NameNotFoundException e) {
    e.printStackTrace();
}

碎片的等效代码是什么?

e.g。我可以在Fragments onAttach()方法中放置什么代码来获取当前的Fragment名称?为什么没有FragmentInfo类?

2 个答案:

答案 0 :(得分:1)

在片段的onAttach中,

@Override
public void onAttach(Context context) {
    super.onAttatch(context);
    Fragment currentFragment = getActivity().getFragmentManager().findFragmentById(R.id.fragment_container);
    Log.d(TAG, currentFragment.getClass().toString());
}

答案 1 :(得分:0)

如果添加带有如下标记的片段:

fragmentManager.beginTransaction().add(new Fragment(), "fragment-tag").commit()

您可以通过

获取标记字符串
fragment.getTag()