我在我的應用程序中添加了包含後退導航的PreferenceScreen。當我點擊導航圖標時,它不會保存我在PreferenceScreen中製作的內容。那麼,我如何處理導航返回點擊。如何知道導航返回是否被點擊?
-3
A
回答
2
你可以簡單地覆蓋onBackPressed
...
@Override
public void onBackPressed()
{
// code here to save the change
super.onBackPressed(); // optional depending on your needs
}
由於PreferenceActivity是活動的一個子類,它應該遵循相同的生命週期。點擊鏈接,然後導航到間接子類別或這裏是直接http://developer.android.com/reference/android/preference/PreferenceActivity.html
編輯
在你的情況,你使用的是爲父活動MainActivity,這就是爲什麼它是越來越重新創建你的時候按回導航。從清單中刪除該行。
<activity
android:name=".UserSettingActivity"
android:label="@string/app_name"
(remove this line) android:parentActivityName=".MainActivity" >
</activity>
和更改設置活動的代碼..
public class UserSettingActivity extends PreferenceActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.user_settings);
getActionBar().setDisplayHomeAsUpEnabled(true);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// TODO Auto-generated method stub
switch (item.getItemId()) {
case android.R.id.home:
Log.e("onOptionsItemSelected", "home");
finish();
return false;
}
return super.onOptionsItemSelected(item);
}
相關問題
- 1. 如何知道複選框是否被點擊或不角2
- 2. 如何知道一個元素是否已被點擊jquery
- 3. 如何知道按鈕是否被點擊android
- 4. iOS如何知道html5按鈕是否被點擊加載UIWebView
- 5. 如何知道被調用的文件是否返回錯誤?
- 6. qt如何知道按鈕被點擊?
- 7. 你知道如何使這個紅色導航點擊嗎? (Flexslider)
- 8. 如何知道點擊通知後是否打開了活動?
- 9. 不知道如何返回端點
- 10. 我怎麼知道錨鏈接是否被點擊?
- 11. 如何知道按鈕在form1中被點擊但是在form2中知道C#
- 12. 如何知道TStringList是否被刷新
- 13. 如何知道PHAsset是否被修改?
- 14. 如何知道mapView是否被加載?
- 15. 如何知道被點擊的按鈕ID是什麼 - android
- 16. 如何知道是否有某物被射線擊中?
- 17. 我如何知道我的html鏈接是否從Servlet中被點擊?
- 18. 如何知道是否完成按鈕被點擊操作模式
- 19. 如何知道UITextView是否有焦點
- 20. Travis CI如何知道推送事件是否被回購?
- 21. 如何知道我是否在回傳?
- 22. 如何知道用戶是否點擊了表格中的X
- 23. 如何知道某人是否點擊了特定的面板?
- 24. 如何知道用戶是否點擊了微調控件android
- 25. LibGDX如何知道是否有人點擊紋理
- 26. 如何知道鼠標點擊是否在圖形圖像java
- 27. 如何知道用戶是否點擊了視頻播放
- 28. 如何知道在回收站查看項目中查看是否點擊android
- 29. 如何知道jQuery中哪個錨點被點擊?
- 30. C++ - 如何知道map :: upper_bound()是否沒有返回值?
嘗試重寫活動 – user2520215