Java android ui小部件初始化导致错误
我对android编程非常陌生,所以请原谅 我有一个任务,需要在当前代码库的xml中添加一个文本框,然后在用户编辑文本框时更改代码中的变量 所以我添加了文本框,它显示得很好,但是当我尝试初始化它时,我得到了一个错误,应用程序意外停止,LogCat中有很多东西 澄清:只有最后一个文本框IntersymboltTime会导致错误。如果我注释掉它的初始化,一切都会正常运行 我的xml示例(前两个来自现有代码,用于比较): PortToIntersymboltTime按预期返回 我错过了什么 编辑:我的logcat日志: 04-13 18:10:17.556:W/ResourceType(716):获取资源号0x00000100的值时没有包标识符 04-13 18:10:17.566:D/AndroidRuntime(716):关闭虚拟机 04-13 18:10:17.566:W/dalvikvm(716):threadid=1:线程以未捕获异常退出(组=0x40015560) 04-13 18:10:17.576:E/AndroidRuntime(716):致命异常:主 04-13 18:10:17.576:E/AndroidRuntime(716):java.lang.RuntimeException:无法启动活动组件信息{edu.uw.cs.cse461.sp12.timingframing/edu.uw.cs.cse461.sp12.TimingFramingAndroidActivity}:android.content.res.Resources$NotFoundException:字符串资源ID#0x100 04-13 18:10:17.576:E/AndroidRuntime(716):在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1647) 04-13 18:10:17.576:E/AndroidRuntime(716):在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663) 04-13 18:10:17.576:E/AndroidRuntime(716):在android.app.ActivityThread.access$1500(ActivityThread.java:117) 04-13 18:10:17.576:E/AndroidRuntime(716):在android.app.ActivityThread$H.handleMessage(ActivityThread.java:931) 04-13 18:10:17.576:E/AndroidRuntime(716):在android.os.Handler.dispatchMessage(Handler.java:99)上 04-13 18:10:17.576:E/AndroidRuntime(716):在android.os.Looper.loop(Looper.java:123) 04-13 18:10:17.576:E/AndroidRuntime(716):位于android.app.ActivityThread.main(ActivityThread.java:3683) 04-13 18:10:17.576:E/AndroidRuntime(716):位于java.lang.reflect.Method.Invokenactive(本机方法) 04-13 18:10:17.576:E/AndroidRuntime(716):在java.lang.reflect.Method.invoke(Method.java:507) 04-13 18:10:17.576:E/AndroidRuntime(716):在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) 04-13 18:10:17.576:E/AndroidRuntime(716):位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) 04-13 18:10:17.576:E/AndroidRuntime(716):在dalvik.system.NativeStart.main(本机方法) 04-13 18:10:17.576:E/AndroidRuntime(716):由以下原因引起:android.content.res.Resources$NotFoundException:字符串资源ID#0x100 04-13 18:10:17.576:E/AndroidRuntime(716):在android.content.res.Resources.getText(Resources.java:201) 04-13 18:10:17.576:E/AndroidRuntime(716):在android.widget.TextView.setText(TextView.java:2857) 04-13 18:10:17.576:E/AndroidRuntime(716):在edu.uw.cs.cse461.sp12.timingframing.TimingFramingAndroidActivity.onCreate(TimingFramingAndroidActivity.java:39) 04-13 18:10:17.576:E/AndroidRuntime(716):在android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) 04-13 18:10:17.576:E/AndroidRuntime(716):在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611)Java android ui小部件初始化导致错误,java,android,android-widget,Java,Android,Android Widget,我对android编程非常陌生,所以请原谅 我有一个任务,需要在当前代码库的xml中添加一个文本框,然后在用户编辑文本框时更改代码中的变量 所以我添加了文本框,它显示得很好,但是当我尝试初始化它时,我得到了一个错误,应用程序意外停止,LogCat中有很多东西 澄清:只有最后一个文本框IntersymboltTime会导致错误。如果我注释掉它的初始化,一切都会正常运行 我的xml示例(前两个来自现有代码,用于比较): PortToIntersymboltTime按预期返回 我错过了什么 编辑:我的
04-13 18:10:17.576:E/AndroidRuntime(716):。。。还有11个根据给出的信息,调试代码确实很困难。能否请您提供Logcat的错误日志,以及您的
portToIntersymbolTime
代码?
根据我现在看到的情况,xml中缺少hostText。但是我假设(因为您说的是
((TextView)findViewById(R.id.hostText)).setText(mServerHost);
是现有代码的一部分)您只是没有粘贴xml的该部分。根据给定的信息,调试代码确实很困难。能否请您提供Logcat的错误日志,以及您的portToIntersymbolTime
代码?
根据我现在看到的情况,xml中缺少hostText。但是我假设(因为您说的是
((TextView)findViewById(R.id.hostText)).setText(mServerHost);
是现有代码的一部分)您只是没有粘贴xml的那一部分。发布您的日志肯定会有助于缩小范围。我首先要看的是mClient.portToIntersymbolTime(mServerPort,1)
的返回类型是什么。EditText需要键入CharSequence
。我确信你需要使用.toString
或类似的东西。发布日志肯定会有助于缩小范围。我首先要看的是mClient.portToIntersymbolTime(mServerPort,1)
的返回类型是什么。EditText需要键入CharSequence
。我确信您需要使用.toString
或类似的东西。对不起,我应该澄清一下,是最后一个,符号间时间,导致了错误。我只是提供了代码片段,所以它不是一大块代码。我将尝试找出足够的logcat来发布错误日志。转到“窗口->显示视图->其他”。展开Android并选择logcat。再次运行代码,错误显示为红色。对不起,我应该澄清一下,是最后一个,符号间时间,导致了错误。我只是提供了代码片段,所以它不是一大块代码。我将尝试找出足够的logcat来发布错误日志。转到“窗口->显示视图->其他”。展开Android并选择logcat。再次运行代码,错误显示为红色。返回类型为int。我假设它可以接受println或类似的任何值,这意味着int可以。这是一种误解吗?McClient是另一个类的扩展,您可以添加toString
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/hostText"
android:layout_marginTop="5dp"
android:text="@string/portlabel"
android:textAppearance="?android:attr/textAppearanceMedium" />
<EditText
android:id="@+id/portText"
android:layout_width="110dp"
android:layout_height="35dp"
android:layout_alignParentLeft="true"
android:layout_below="@+id/textView3"
android:hint="@string/portHint"
android:inputType="number|textNoSuggestions" />
<TextView
android:id="@+id/textView4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/portText"
android:layout_marginTop="14dp"
android:text="@string/symboltime" />
<EditText
android:id="@+id/intersymboltime"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/textView4"
android:ems="10"
android:hint="@string/symboltimehint"
android:inputType="number" />
((TextView)findViewById(R.id.hostText)).setText(mServerHost);
((TextView)findViewById(R.id.portText)).setText(new Integer(mServerPort).toString());
((TextView)findViewById(R.id.intersymboltime)).setText(mClient.portToIntersymbolTime(mServerPort, 1));