getSupportFragmentManager().getFragments()显示编译时错误。
getSupportFragmentManager().getFragments()显示编译时错误。
调用getSupportFragmentManager().getFragments()
会显示一个编译时错误,错误信息如下:
getSupportFragmentManager().getFragments()只能从
同一库组(groupId = com.android.support)内调用
我在MainActivity
中导入了以下类:
import android.os.Bundle; import android.support.annotation.NonNull; import android.support.design.widget.BottomNavigationView; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentTransaction; import android.support.v7.app.AppCompatActivity; import android.util.Log; import android.view.MenuItem; import android.widget.Toast;
MainActivity
继承了AppCompatActivity
。
我的项目模块级build.gradle
文件如下:
apply plugin: 'com.android.application' android { compileSdkVersion 25 buildToolsVersion "25.0.2" defaultConfig { applicationId "com.mycompany.floatingdemo" minSdkVersion 16 targetSdkVersion 25 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" vectorDrawables.useSupportLibrary = true } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { exclude group: 'com.android.support', module: 'support-annotations' }) compile 'com.android.support:appcompat-v7:25.2.0' compile 'com.android.support:design:25.2.0' compile 'com.android.support:support-vector-drawable:25.2.0' testCompile 'junit:junit:4.12' }
这是FragmentManager.java
中getFragments
方法的源代码。
/** * 获取已添加到片段管理器中的所有片段的列表。 * * @return 所有片段的列表,如果没有则返回null。 * @hide */ @RestrictTo(LIBRARY_GROUP) public abstract ListgetFragments();
我最近将我的Android Studio更新到最新的稳定版本(2.3),并且也更新了Android Gradle插件。我认为这可能与此错误有关,因为我以前没有看到过这个错误。