You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android开发中跳转FollowingActivity遇“Unreachable statement”错误求助

解决“Unreachable statement”错误的方法

嘿,作为Android开发新手碰到这个问题很正常,我来帮你捋清楚!

你遇到的Unreachable statement错误,核心原因非常直接:你的mFollowing点击监听代码写在了return view;语句之后。在Java中,方法执行到return时就会立即结束,后面的代码永远不会被执行,所以编译器会提示这个错误。

具体修改步骤:

  1. 把mFollowing的点击监听代码移动到return view;之前的位置
  2. 你已经在onCreateView方法开头通过mFollowing = (TextView) view.findViewById(R.id.tvFollowing);初始化了这个控件,所以不需要再重复执行findViewById了,直接复用这个变量就行

修改后的关键代码片段如下:

// ... 你的其他代码 ...
TextView editProfile = (TextView) view.findViewById(R.id.textEditProfile);
editProfile.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        Log.d(TAG, "onClick: navigating to " + mContext.getString(R.string.edit_profile_fragment));
        Intent intent = new Intent(getActivity(), AccountSettingsActivity.class);
        intent.putExtra(getString(R.string.calling_activity), getString(R.string.profile_activity));
        startActivity(intent);
        getActivity().overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
    }
});

// 把这段监听代码移到return之前!
mFollowing.setOnClickListener(new View.OnClickListener() {
    public void onClick(View v) {
        Log.d(TAG, "onClick: navigating to FollowingActivity");
        Intent intent = new Intent(getActivity(), FollowingActivity.class);
        intent.putExtra(getString(R.string.calling_activity), getString(R.string.profile_activity));
        startActivity(intent);
        getActivity().overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
    }
});

return view; // return语句放在所有控件逻辑之后

为什么之前跳转到AccountSettingsActivity的代码没问题?

因为那段点击监听代码写在了return view;之前,方法执行到这里时会正常注册监听,然后才返回视图,所以能正常工作。

这样修改后,你的mFollowing点击事件就能正常触发,跳转到FollowingActivity了!

内容的提问来源于stack exchange,提问作者Pete Eske

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 06:40:16