今天运行项目,项目报错如下:
android.content.res.Resources$NotFoundException: String resource ID #0x2f38
logcat错误信息如下:
Process: com.chinesesensor.hlhmeasuring, PID: 13540
android.content.res.Resources$NotFoundException: String resource ID #0x2f38
at android.content.res.Resources.getText(Resources.java:244)
at android.widget.TextView.setText(TextView.java:3888)
at com.chinesesensor.hlhmeasuring.fragment.UserInfoFragment.onActivityCreated(UserInfoFragment.java:52)
at android.support.v4.app.Fragment.performActivityCreated(Fragment.java:1970)
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1051)
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1207)
at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:738)
at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1572)
at android.support.v4.app.FragmentManagerImpl.executePendingTransactions(FragmentManager.java:545)
at android.support.v4.app.FragmentPagerAdapter.finishUpdate(FragmentPagerAdapter.java:141)
at android.support.v4.view.ViewPager.populate(ViewPager.java:1106)
at android.support.v4.view.ViewPager.setCurrentItemInternal(ViewPager.java:552)
at android.support.v4.view.ViewPager.setCurrentItemInternal(ViewPager.java:514)
at android.support.v4.view.ViewPager.setCurrentItem(ViewPager.java:495)
at com.chinesesensor.hlhmeasuring.ui.NoScrollViewPager.setCurrentItem(NoScrollViewPager.java:57)
at com.chinesesensor.hlhmeasuring.fragment.SettingFragment$3.goToNextPager(SettingFragment.java:162)
at com.chinesesensor.hlhmeasuring.fragment.InputPwdFragment$1.onClick(InputPwdFragment.java:87)
at android.view.View.performClick(View.java:4438)
at android.view.View$PerformClick.run(View.java:18422)
at android.os.Handler.handleCallback(Handler.java:733)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5017)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
at dalvik.system.NativeStart.main(Native Method)
根据logcat找到出错代码的行号,找出出错代码:
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
UserInfoDao userinfodao = new UserInfoDao(getContext());
List<User> infos = userinfodao.findInfo();
if(infos.size()>0){
tvUserinfoWorkunit.setText(infos.get(0).getWorkunit());
tvUserinfoInspector.setText(infos.get(0).getInspector());
tvUserinfoWeightlimit.setText(infos.get(0).getWeightlimit());
tvUserinfoRoad.setText(infos.get(0).getRoute());
}
}
其中
tvUserinfoWeightlimit.setText(infos.get(0).getWeightlimit());
infos.get(0).getWeightlimit()获得的数据为Integer类型,setText需要的类型为String 这样就会出现如上的问题。只需小小改动就解决了上述问题。
tvUserinfoWeightlimit.setText(infos.get(0).getWeightlimit().toString());