Java 初学

Java 初学,java,android,android-intent,Java,Android,Android Intent,有人能发现这个代码有什么问题吗?这是我第一次使用意图: Intent intent = new Intent( this,XmlParserActivity.class); String Postcode = returnedAddress.getPostalCode().toString(); intent.putExtra("postcode", Postcode); 在我的解析器中,我有: Intent intent = getIntent(); String Postcode =

有人能发现这个代码有什么问题吗?这是我第一次使用意图:

Intent intent = new Intent( this,XmlParserActivity.class);

String Postcode = returnedAddress.getPostalCode().toString();

intent.putExtra("postcode", Postcode);
在我的解析器中,我有:

Intent intent = getIntent();

String Postcode = intent.getStringExtra("postcode");

URL url = new URL("http://new.myweather2.com/developer/forecast.ashx?uac=gcV3ynNdoV&output=xml&query=" + Postcode);
请注意,我的gps正在工作,我已经测试过了

日志:

04-01 21:07:25.514: E/AndroidRuntime(19408): FATAL EXCEPTION: main
04-01 21:07:25.514: E/AndroidRuntime(19408): java.lang.NullPointerException
04-01 21:07:25.514: E/AndroidRuntime(19408):    at weather.app.WeatherApplicationActivity.onLocationChanged(WeatherApplicationActivity.java:116)
04-01 21:07:25.514: E/AndroidRuntime(19408):    at android.location.LocationManager$ListenerTransport._handleMessage(LocationManager.java:228)
04-01 21:07:25.514: E/AndroidRuntime(19408):    at android.location.LocationManager$ListenerTransport.access$000(LocationManager.java:160)
04-01 21:07:25.514: E/AndroidRuntime(19408):    at android.location.LocationManager$ListenerTransport$1.handleMessage(LocationManager.java:176)
04-01 21:07:25.514: E/AndroidRuntime(19408):    at android.os.Handler.dispatchMessage(Handler.java:99)
04-01 21:07:25.514: E/AndroidRuntime(19408):    at android.os.Looper.loop(Looper.java:150)
04-01 21:07:25.514: E/AndroidRuntime(19408):    at android.app.ActivityThread.main(ActivityThread.java:4293)
04-01 21:07:25.514: E/AndroidRuntime(19408):    at java.lang.reflect.Method.invokeNative(Native Method)
04-01 21:07:25.514: E/AndroidRuntime(19408):    at java.lang.reflect.Method.invoke(Method.java:507)
04-01 21:07:25.514: E/AndroidRuntime(19408):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:849)
04-01 21:07:25.514: E/AndroidRuntime(19408):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:607)
04-01 21:07:25.514: E/AndroidRuntime(19408):    at dalvik.system.NativeStart.main(Native Method)

您确定要在onCreate方法中使用代码的第二部分(在XMLParseActivity中)


它应该会起作用。并记录更多值以查看发生的情况。

是否确实要在onCreate方法中使用代码的第二部分(在XMLParseActivity中)


它应该会起作用。并记录更多值以查看发生的情况。

第一个代码应该是这样的:

Intent intent = new Intent( YourCurrentClassname.this,XmlParserActivity.class);

String Postcode = returnedAddress.getPostalCode().toString();

intent.putExtra("postcode", Postcode);
并接收该值:

Intent intent = getIntent();

String Postcode = intent.getExtras(FirstClassName.postcode);

URL url = new URL("http://new.myweather2.com/developer/forecast.ashx?uac=gcV3ynNdoV&output=xml&query=" + Postcode);

第一个代码应该是这样的:

Intent intent = new Intent( YourCurrentClassname.this,XmlParserActivity.class);

String Postcode = returnedAddress.getPostalCode().toString();

intent.putExtra("postcode", Postcode);
并接收该值:

Intent intent = getIntent();

String Postcode = intent.getExtras(FirstClassName.postcode);

URL url = new URL("http://new.myweather2.com/developer/forecast.ashx?uac=gcV3ynNdoV&output=xml&query=" + Postcode);

试着获得下面的额外目的怎么样?plz还记录extras捆绑包,查看您是否获得了正确的密钥值

Bundle extras = getIntent().getExtras(); 
if(extras !=null) {
     String PostCode = extras.getString("postcode");
}

试着获得下面的额外目的怎么样?plz还记录extras捆绑包,查看您是否获得了正确的密钥值

Bundle extras = getIntent().getExtras(); 
if(extras !=null) {
     String PostCode = extras.getString("postcode");
}

这个代码是完美的,没有任何问题。 你需要再剪贴一点;特别是,您是否使用

startActivity(intent);

设置意图后?

此代码非常完美,没有任何问题。 你需要再剪贴一点;特别是,您是否使用

startActivity(intent);

根据您的日志设置意图后?

WeatherApplicationActivity.java的第116行出现空指针异常

选中这一行,您应该有一个a.B格式的语句,其中a为空


它可能类似于a().b.c().d,其中点左侧的某个值为null:a()或a().b或a().b.c()为null根据您的日志,WeatherApplicationActivity.java的第116行有一个null指针异常

选中这一行,您应该有一个a.B格式的语句,其中a为空



它可能类似于a().b.c().d,其中点左侧的某个值为null:a()或a().b或a().b.c()为null

如果没有强制关闭此方法的变量和正在使用的另一个变量,则“onLocationChanged”方法将使用try catch(NullPionerException)继续运行。

您的“onLocationChanged”方法方法将使用try catch(NullPionerException),如果您没有强制关闭此方法的变量和另一个使用方法检查的变量。

如果您使用的是
“putExra”
,则在第二个活动中使用
“getExtra”

如果您使用的是
“putExra”
,则在第二个活动中使用
“getExtra”

发生了什么,您记录了任何值以查看结果吗?希望您已经解决了问题您有一个空指针异常:E/AndroidRuntime(19408):java.lang.NullPointerException 04-01 21:07:25.514:E/AndroidRuntime(19408):at weather.app.WeatherApplicationActivity.onLocationChanged(WeatherApplicationActivity.java:116),您能指定这是哪一行吗?发生了什么,您记录了任何值以查看您得到了什么吗?希望您已经解决了您的问题您有一个空指针异常:E/AndroidRuntime(19408):java.lang.NullPointerException 04-01 21:07:25.514:E/AndroidRuntime(19408):at weather.app.WeatherApplicationActivity.onLocationChanged(WeatherApplicationActivity.java:116),您能指定这是哪一行吗?
FirstClassName
是调用意图的活动的名称。与
YourCurrentClassname
相同。String Postcode=Intent.getExtras(FirstClassName.Postcode);此行出现错误:postcode无法解析或不是字段在创建
之前和类开始之后定义此字段,即在第一个类中的第一个
{
之后或在定义意图的调用活动之后:
public static final String postcode=“your.package.name.\u单击”
在何处正确替换您的包名。试试看单击的是做什么的?
FirstClassName
是您调用意图的活动的名称。与
YourCurrentClassname
相同。String Postcode=Intent.getExtras(FirstClassName.Postcode);此行出现错误:postcode无法解析或不是字段在创建
之前和类开始之后定义此字段,即在第一个类中的第一个
{
之后或在定义意图的调用活动之后:
public static final String postcode=“your.package.name.\u单击”
正确替换包名的位置。试试看,单击的按钮到底做了什么?是的,第二部分是onCreate.Log.e(我的调试标记,“无法检索邮政编码”)——android和调试并不新鲜,我已经将我的logcat添加到我的问题中,尽管是的,第二部分是onCreate.Log.e(我的调试标记,“无法检索邮政编码”);---对android和调试来说不是很新我已经在我的问题中添加了我的日志猫,虽然我尝试了这个,但它也不起作用。我的日志记录不是很好,因为我是新的,我的讲师甚至不知道……我尝试了这个,它也不起作用。我的日志记录不是很好,因为我是新的,我的讲师甚至不知道……意图告诉了你想要什么o do:start XmlParserActivity.class-然后您实际执行它:startActivity(intent)。那么我将把它放在哪里?在xml解析器活动中?intent告诉您希望执行的操作:start XmlParserActivity.class-然后您实际执行它:startActivity(intent)。那么我将把它放在哪里?在xml解析器活动中?