Android TabLayout class 未解析
Android TabLayout class not resolving
我无法让 TabLayout 解析。我已经尝试实施其他人针对此问题推荐的所有依赖项,但它仍然无法正常工作。谁能帮忙?问题是我正在尝试与 Androidx 一起使用旧功能吗?谢谢
第一节:
build.gradle
apply plugin: 'com.android.application'
android {
compileSdkVersion 30
buildToolsVersion "30.0.0"
defaultConfig {
applicationId "com.example.instagramclone"
minSdkVersion 16
targetSdkVersion 30
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(dir: "libs", include: ["*.jar"])
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
testImplementation 'junit:junit:4.13'
androidTestImplementation 'androidx.test.ext:junit:1.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
//Design
implementation 'com.android.support:support-compat:30.0.0'
implementation "com.android.support:support-core-utils:30.0.0"
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'com.google.android.material:material:1.1.0'
implementation 'com.github.ittianyu:BottomNavigationViewEx:2.0.4'
implementation "com.android.support:design:30.0.0"
}
第二部分:XML 文件
<merge xmlns:android="http://schemas.android.com/apk/res/android">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_alignParentTop="true">
<com.google.android.material.appbar.AppBarLayout
android:layout_width='match_parent'
android:layout_height = 'wrap_content'>
<android.support.design.widget.TabLayout
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:id="@+id/tabs"
android:background="@drawable/white_grey_border_bottom">
</android.support.design.widget.TabLayout>
</com.google.android.material.appbar.AppBarLayout>
</RelativeLayout>
</merge>
支持库 v.30.0.0
不 存在。
删除这些依赖项:
//Design
//implementation 'com.android.support:support-compat:30.0.0'
//implementation "com.android.support:support-core-utils:30.0.0"
//implementation "com.android.support:design:30.0.0"
对于 TabLayout
添加此依赖项:
implementation 'com.google.android.material:material:1.1.0'
并使用 class com.google.android.material.tabs.TabLayout
除了 Gabriele 的建议之外,您还可以在 XML 文件中进一步添加标签,例如
<com.google.android.material.tabs.TabLayout
android:layout_height="wrap_content"
android:layout_width="match_parent">
<com.google.android.material.tabs.TabItem
android:text="@string/tab_text"/>
<com.google.android.material.tabs.TabItem
android:icon="@drawable/ic_android"/>
</com.google.android.material.tabs.TabLayout>
或者,如果您想以编程方式添加它们,
在你的 onCreate 中,做这样的事情,
tabLayout.addTab(tabLayout.newTab().setText("Tab 1"));
tabLayout.addTab(tabLayout.newTab().setText("Tab 2"));
tabLayout.addTab(tabLayout.newTab().setText("Tab 3"));
我无法让 TabLayout 解析。我已经尝试实施其他人针对此问题推荐的所有依赖项,但它仍然无法正常工作。谁能帮忙?问题是我正在尝试与 Androidx 一起使用旧功能吗?谢谢
第一节: build.gradle
apply plugin: 'com.android.application'
android {
compileSdkVersion 30
buildToolsVersion "30.0.0"
defaultConfig {
applicationId "com.example.instagramclone"
minSdkVersion 16
targetSdkVersion 30
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(dir: "libs", include: ["*.jar"])
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
testImplementation 'junit:junit:4.13'
androidTestImplementation 'androidx.test.ext:junit:1.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
//Design
implementation 'com.android.support:support-compat:30.0.0'
implementation "com.android.support:support-core-utils:30.0.0"
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'com.google.android.material:material:1.1.0'
implementation 'com.github.ittianyu:BottomNavigationViewEx:2.0.4'
implementation "com.android.support:design:30.0.0"
}
第二部分:XML 文件
<merge xmlns:android="http://schemas.android.com/apk/res/android">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_alignParentTop="true">
<com.google.android.material.appbar.AppBarLayout
android:layout_width='match_parent'
android:layout_height = 'wrap_content'>
<android.support.design.widget.TabLayout
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:id="@+id/tabs"
android:background="@drawable/white_grey_border_bottom">
</android.support.design.widget.TabLayout>
</com.google.android.material.appbar.AppBarLayout>
</RelativeLayout>
</merge>
支持库 v.30.0.0
不 存在。
删除这些依赖项:
//Design
//implementation 'com.android.support:support-compat:30.0.0'
//implementation "com.android.support:support-core-utils:30.0.0"
//implementation "com.android.support:design:30.0.0"
对于 TabLayout
添加此依赖项:
implementation 'com.google.android.material:material:1.1.0'
并使用 class com.google.android.material.tabs.TabLayout
除了 Gabriele 的建议之外,您还可以在 XML 文件中进一步添加标签,例如
<com.google.android.material.tabs.TabLayout
android:layout_height="wrap_content"
android:layout_width="match_parent">
<com.google.android.material.tabs.TabItem
android:text="@string/tab_text"/>
<com.google.android.material.tabs.TabItem
android:icon="@drawable/ic_android"/>
</com.google.android.material.tabs.TabLayout>
或者,如果您想以编程方式添加它们, 在你的 onCreate 中,做这样的事情,
tabLayout.addTab(tabLayout.newTab().setText("Tab 1"));
tabLayout.addTab(tabLayout.newTab().setText("Tab 2"));
tabLayout.addTab(tabLayout.newTab().setText("Tab 3"));