2010-02-02 70 views
2

当我旋转设备,我得到错误(这是HTC与Verizon):旋转设备时需要编码吗?

The application My App (process com.mycompany.android) has 
stopped unexpectadly. Please try again. 

所以,我觉得我需要为这个问题的代码。换句话说,当将设备从风景转换为便携式或从便携式转为风景时,应用程序需要捕捉此事件。

是不是?

如何制作它?这里有什么问题?

编辑:是否可以在模拟器上测试?

在此先感谢。

+2

要在模拟器中测试,切换视图的快捷方式是KEYPAD_9,Ctrl-F12(http://developer.android.com/guide/developing/tools/emulator.html) – keith 2010-02-02 03:32:19

+0

谢谢。我得到了它的工作。 – AndroiDBeginner 2010-02-02 03:41:37

回答

1

默认情况下,Android活动在配置更改时关闭并重新启动。最简单的方法是添加应用程序清单android:configChanges。这将告诉Android,您将自行处理列出的配置更改。例如

<activity 
    android:name=".YourActivity" 
    android:label="YourActivity" 
    android:configChanges="orientation|keyboardHidden" /> 

在您的清单意味着活动将不会重启的方向改变,或者如果用户已经滑出的键盘。

+0

太好了,我在找这个。我知道了。谢谢。 – AndroiDBeginner 2010-02-02 08:29:55

2

如果我没有弄错,Android(默认情况下)在改变方向时会破坏并重新创建您的Activity。这听起来像是它可能会导致您的应用程序出现问题吗? Android Developer的博客上有一个article,Android Developer的邮件列表上有一个post,它描述了一个类似的问题。

+0

感谢您的回复。 这听起来很难解决我的问题。因为当前活动开始时,此活动连接到ftp服务器。然后它会生成要在线程中使用的数据。 因此,我需要连接,处理....? 什么方法是最好的? 请咨询家伙。 – AndroiDBeginner 2010-02-02 04:05:54

+0

你可以使用一个'AsyncTask'来从你的'Activity'在后台做东西,或者创建一个'Service'来保存你的连接,并从你的'Activity'中绑定它。 – 2010-02-02 08:32:06

+0

好的。谢谢。我会尝试你的想法。 – AndroiDBeginner 2010-02-02 09:42:35

1

在已知将立即为新配置创建新实例的情况下。

活动函数onRetainNonConfigurationInstance()允许您将旧状态到新活动状态的广泛状态从加载的位图存储到网络连接,以平均主动运行线程。

执行此方法后,结果可以在函数getLastNonConfigurationInstance()的onCreate()或onStart()中使用。

+0

谢谢。对我来说这非常有帮助。 – AndroiDBeginner 2010-02-03 07:58:17

+0

很高兴听到。顺便说一句,当按下有用答案左边的数字时,stackoverflow系统效果最好。 :) – Rene 2010-02-04 09:38:30