android - 检查类是 fragment 还是 Activity

标签 android android-fragments android-activity

我从 api 获取 Activity 名称(直到现在我在项目中使用 Activity )。但现在其中一些我做了 fragment 。 现在我开始我的 Activity 了

Class<?> myClass = Class.forName("com.aksu.emp." + ((com.core.Menu) o)
                        .getActivityName());
Activity activity = (Activity) myClass.newInstance();
ActivityRedirect(activity); 

如果某些 Activity 已转换为 fragment ,我如何检查它是否是 fragment 并交换 fragment 。

最佳答案

手动实例化 Activity 等不是一个好主意。假设你的对象在 o 中,你应该做这样的事情

if (o instanceof Activity) {
    if (o instanceof ActivityA) {
        // go to A
    } else if (o instanceof ActivityB) {
        // go to B
    }
} if (o instanceof Fragment) {
    // do something else
}

对于 Activity ,您甚至可以简化它(如果您不需要通过 bundle 或类似方式发送特定数据)。

if (o instanceof Activity) {
    context.startActivity(context, ((Activity) o).class));
}

关于android - 检查类是 fragment 还是 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37022325/

相关文章:

Android ActivityManager 与 WindowManager

Android - 触摸监听器触发了两次

android - 在特定 RecyclerView CardView 项目中膨胀 fragment

java - 如何将数据从 Activity 传递到 Fragment?

java - 在 google maps api v2 中膨胀 fragment 异常

android - 适用于 Android 的 Google 登录

java - 将适配器保留为 Activity 的内部类或外部类,更好的方法是什么?

android - 在TabLayout下的AppBarLayout中添加自定义阴影?

android - 关闭应用程序时不会收到通知

android - 抽屉翻转动画(Google Photos、Play Store 等)