添加Bottom Navigation Activity后编译出错(非法字符)

吠陀艾莉亚

添加底部导航活动并尝试从另一个活动调用它后,在编译时出现错误:

{project directory}\ui\dashboard\DashboardFragment.java:13: error: illegal character: '`'
import `in`.ac.somedomain.someappname.R;

导致错误的 DashboardFragment.java 中的代码是导入行:

import `in`.ac.somedomain.someappname.R;

我只添加了一个新的底部导航活动,并尝试使用以下方法调用它:

Intent homeIntent = new Intent(getApplicationContext, HomeActivity.class);
startActivity(homeIntent);

在手动删除“`”时(在 3 个活动中:DashboardFragment、HomeFragment、NotificationsFragment),调用活动时发生以下错误(logcat,应用程序崩溃):

2020-05-24 16:29:02.711 14323-14323/in.ac.somedomain.someappname E/AndroidRuntime: FATAL EXCEPTION: main
    Process: in.ac.somedomain.someappname, PID: 14323
    java.lang.RuntimeException: Unable to start activity ComponentInfo{in.ac.somedomain.someappname/in.ac.somedomain.someappname.BaseActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void androidx.appcompat.app.ActionBar.setTitle(java.lang.CharSequence)' on a null object reference
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2943)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3078)
        at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78)
        at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108)
        at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1816)
        at android.os.Handler.dispatchMessage(Handler.java:106)
        at android.os.Looper.loop(Looper.java:193)
        at android.app.ActivityThread.main(ActivityThread.java:6854)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:860)
     Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void androidx.appcompat.app.ActionBar.setTitle(java.lang.CharSequence)' on a null object reference
        at androidx.navigation.ui.ActionBarOnDestinationChangedListener.setTitle(ActionBarOnDestinationChangedListener.java:48)
        at androidx.navigation.ui.AbstractAppBarOnDestinationChangedListener.onDestinationChanged(AbstractAppBarOnDestinationChangedListener.java:100)
        at androidx.navigation.NavController.addOnDestinationChangedListener(NavController.java:218)
        at androidx.navigation.ui.NavigationUI.setupActionBarWithNavController(NavigationUI.java:220)
        at in.ac.somedomain.someappname.BaseActivity.onCreate(BaseActivity.java:26)
        at android.app.Activity.performCreate(Activity.java:7151)
        at android.app.Activity.performCreate(Activity.java:7142)
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1272)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2923)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3078) 
        at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78) 
        at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108) 
        at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1816) 
        at android.os.Handler.dispatchMessage(Handler.java:106) 
        at android.os.Looper.loop(Looper.java:193) 
        at android.app.ActivityThread.main(ActivityThread.java:6854) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:860) 

将鼠标悬停在代码中的“`in`”上时出现错误Raw string literals are not supported at language level '7',我尝试了它的一些建议(将源兼容性切换为 1.8,这与级别 8 相同),禁用了一些没有改变任何东西的东西,并且现在它只是告诉我去模块设置,但我怀疑原始字符串是问题所在。

我该怎么做才能使我的底部导航活动正常工作?

编辑:活动代码(底部导航活动,称为 Main2Activity):

package in.ac.somedomain.somename;

import android.os.Bundle;

import com.google.android.material.bottomnavigation.BottomNavigationView;

import androidx.appcompat.app.AppCompatActivity;
import androidx.navigation.NavController;
import androidx.navigation.Navigation;
import androidx.navigation.ui.AppBarConfiguration;
import androidx.navigation.ui.NavigationUI;

public class Main2Activity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main2);
        BottomNavigationView navView = findViewById(R.id.nav_view);
        // Passing each menu ID as a set of Ids because each
        // menu should be considered as top level destinations.
        AppBarConfiguration appBarConfiguration = new AppBarConfiguration.Builder(
                R.id.navigation_home, R.id.navigation_dashboard, R.id.navigation_notifications)
                .build();
        NavController navController = Navigation.findNavController(this, R.id.nav_host_fragment);
//the below line was causing the problem
//        NavigationUI.setupActionBarWithNavController(this, navController, appBarConfiguration);
        NavigationUI.setupWithNavController(navView, navController);
    }

}
拉兹拉布

首先,替换导入代码:

import `in`.ac.somedomain.someappname.R;

在:

 import ac.somedomain.someappname.R;

然后错误表明您有一个指向操作栏 = null 的链接。这个答案可能对你有帮助:答案

如果这没有帮助,请显示您的 Java 代码和清单。

还值得一提的是,操作栏和底栏是不同的东西。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

添加contentComponent后,React Navigation抽屉变为空白

从子页面导航后如何继续消失 Flutter Bottom Navigation 和 AppBar

Vuetify v-bottom-navigation 下推

Vuetify v-bottom-navigation 下推

React Navigation添加保存按钮

添加avfilter后编译FFMPEG / libav代码时出错

sbt run 在添加依赖项后编译时出错?在 ubuntu

Android Studio-更改NOT OF BOTTOM NAVIGATION VIEW的颜色

App closes when item on bottom navigation view is selected to replace fragment

Gatsby WhereInput 查询编译出错

g ++ 47 make编译出错?

在React-Navigation-Stack中出错

具有多个 Activity 的 Android Navigation Drawer

悬停时的jQuery Navigation选项卡添加类

单击“ mdl-navigation__link”时,MDL添加波纹效果

无法将Google Map添加到Navigation Drawer片段

如何在React Navigation中的堆栈导航内添加抽屉

React Native的React-Navigation:在TabNavigator的Tab中添加徽章

在 UITabBarController 中的 tabBar 和 Navigation 视图之间添加 UIView

如何在react-native中添加react-navigation?

React Navigation V5隐藏Stack Navigator中的Bottom标签栏

React-Native:在@ react-navigation / material-bottom-tabs中更改徽章颜色

如何弯曲react-navigation-material-bottom-tabs的顶部两个角?

由@ react-navigation / bottom-tabs 5.x引起的启动错误

kotlin 中未解决的引用错误 (bottom_navigation.setOnNavigationItemSelectedListener)

@react-navigation/bottom-tabs 总是得到未定义的组件

为什么编译出错?excel vba 参考 Outlook

使用 Netbeans 8.2 和 Ubuntu 19.4,编译出错

迁移到AndroidX后,膨胀com.google.android.material.navigation.NavigationView类时出错