2011-06-01 83 views
0

我在开发使用布局和布局的应用程序时出现问题,数据不在这两个布局之间维护。请帮帮我。我也尝试过配置()。在android中的风景和肖像之间的处理状态

public void onConfigurationChanged(Configuration newConfig){ 
    super.onConfigurationChanged(newConfig); 
    setContentView(R.layout.main); 
} 

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
} 
+0

哪些数据?持续设置?局部变量...? – 2011-06-01 14:24:07

回答

0

如果您想要自己处理屏幕更改,您还必须在清单文件中声明它。 添加到您的活动在AndroidManifest.xml

android:configChanges="keyboardHidden|orientation" 
2

当设备方向改变,onCreate事件被再次调用。您需要将onSaveInstanceState中包含的任何信息保存到捆绑包中,并在onCreate事件中重新加载它。

代码的OnCreate

protected void onCreate(Bundle savedInstanceState) { 
// TODO Auto-generated method stub 
super.onCreate(savedInstanceState); 

    if(savedInstanceState!= null) 
    { 
    restoreDataFromBundle(savedInstanceState); 
    } 
} 

代码的onSaveInstanceState

@Override 
protected void onSaveInstanceState(Bundle outState) { 
// TODO Auto-generated method stub 
    outState.putString("key", "value"); 
    super.onSaveInstanceState(outState); 
} 

代码restoreDataFromBundle

private void restoreDataFromBundle(Bundle savedInstanceState) { 
    String myString = savedInstanceState.getStringArray("key"); 
} 
+0

我已经试过了。但没有工作 – user746140 2011-06-02 12:31:58