메인 콘텐츠에 대한 웹보기를로드하는 앱을 만들고 있습니다. 몇 가지 링크를 제공 할 메뉴 인플레이터가 있습니다. 메뉴 인플레이터를 경고 라벨로 사용하고 있습니다. "이 페이지를 떠나시겠습니까?" 그러나 사용자가이 페이지를 떠나고 싶지 않으면 뒤로 버튼을 눌러서 Webview로 돌아갈 수 있기를 바랍니다. 내가 가지고있는 문제는 뒤로 단추가 작업을 다시 시작하고 웹 페이지를 다시로드한다는 것입니다.Android 버튼을 다시 시작하지 못하도록 활동을 중지하십시오.
내 savedContentState를 메뉴 클래스에 보내려고했으나 뒤로 버튼을 누르면 내 webview에 적용하는 방법을 알지 못합니다.
메인 클래스 :
protected void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
web.restoreState(savedInstanceState);
Intent in = new Intent(getApplicationContext(), DBZWiki.class);
in.putExtras(savedInstanceState);
startActivity(in);
}
public boolean onCreateOptionsMenu(android.view.Menu menu) {
super.onCreateOptionsMenu(menu);
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.dbz_menu, menu);
return true;
}
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.dbzAbout:
break;
case R.id.dbzDonate:
break;
case R.id.dbzWiki:
Intent a = new Intent("com.example.thenewboston.DBZWIKI");
startActivity(a);
break;
}
return false;
}
@Override
protected void onDestroy() {
// TODO Auto-generated method stub
super.onDestroy();
web.loadUrl("file:///android_asset/infAppPaused.html");
}
@Override
protected void onResume() {
// TODO Auto-generated method stub
super.onResume();
web.loadUrl(stream);
}
}
위키 메뉴 클래스 :
public class DBZWiki extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.dbz_wiki);
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(keyCode == KeyEvent.KEYCODE_BACK) {
Intent in = getIntent();
startActivity(in);
}
return true;
}
getIntent()로 의도를 얻고 시작하면 의도를 다시 시작하지 않겠습니까? – Gjordis
나는 속이고 있었고, 실제로 무엇을해야할지 모른다. – liyicky
onKeyDown 메서드를 전혀 사용하지 않으면 어떻게됩니까? – Gjordis