本篇文章给大家谈谈覆盖PhoneGapAndroid中的“后退”按钮,以及覆盖模式怎么关闭的知识点,同时本文还将给你拓展Android-如何覆盖“后退”按钮,使其不会完成()我的活动?、android
本篇文章给大家谈谈覆盖PhoneGap Android中的“后退”按钮,以及覆盖模式怎么关闭的知识点,同时本文还将给你拓展Android - 如何覆盖“后退”按钮,使其不会完成()我的活动?、android – EditText与软键盘和“后退”按钮、android – phonegap / jquery mobile – iframe和后退按钮、android – Phonegap ChildBrowser插件:禁用/隐藏位置栏中的URL,但不是后退/前进/退出按钮等相关知识,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:- 覆盖PhoneGap Android中的“后退”按钮(覆盖模式怎么关闭)
- Android - 如何覆盖“后退”按钮,使其不会完成()我的活动?
- android – EditText与软键盘和“后退”按钮
- android – phonegap / jquery mobile – iframe和后退按钮
- android – Phonegap ChildBrowser插件:禁用/隐藏位置栏中的URL,但不是后退/前进/退出按钮
覆盖PhoneGap Android中的“后退”按钮(覆盖模式怎么关闭)
我正在尝试完成多个addEventListener,但是出了点问题?
例如,如果我们在页面上有3个div,并且第一个显示在开头,则其他两个隐藏.
<div id="d1">
<a onClick="
document.addEventListener("backbutton", show_div1, false);
$('#d1').hide();
$('#d2').show();
"
</a>
</div>
<div id="d2"></div> - initially hidden
<div id="d3"></div> - initially hidden
它显示div 2,隐藏div 1并将后退按钮的侦听器设置为show_div1(),一切正常.在按下返回键时,它会警告“我应该显示#div1”,因为它应该显示(// $(‘#d1’).show();被注释)
show_div1(){
//$('#d1').show(); $('#d2').hide();
alert ('I should show #div1');
}
但是现在出现了问题
<div id="d2">
<a onClick="
document.removeEventListener("backbutton", show_div1, false);
document.addEventListener("backbutton", show_div2, false);
$('#d2').hide();
$('#d3').show();
"
</a>
</div>
即使未按下后退按钮,它也会立即触发“我应该显示#div2”! addEventListener就像启动的主函数show_div2()一样,而不仅仅是在该函数的后退按钮上设置侦听器.
show_div2(){
//$('#d2').show(); $('#d3').hide();
alert ('I should show #div2');
}
发生这种情况的可能原因是什么?
解决方法:
尝试这个,
准备好在设备上为此类后退按钮添加一个侦听器
var onBackButton = function(){show_div2();}; //the initial state
document.addEventListener("backbutton", onBackButton, false);
和
don’t use onClick with phoneGap
使用href或ontouchend,并确保您的< >可见,因为您里面没有任何东西(css文件中的显示块)
<div id="d1">
<a href='javascript:onDivClick(1)'></a>
// <a ontouchend='onDivClick(1)'></a> will be better
</div>
<div id="d2">
<a href='javascript:onDivClick(2)'></a>
</div>
在JavaScript中
function onDivClick(var case)
{
switch(case)
case 1:
$('#d1').hide();
$('#d2').show();
onBackButton = function(){show_div1();};
break;
case 2:
$('#d2').hide();
$('#d1').show();
onBackButton = function(){show_div2();};
break;
}
Android - 如何覆盖“后退”按钮,使其不会完成()我的活动?
我目前有一个活动,当它显示时,通知也会显示在通知栏中。
这样当用户按下 home 并且 Activity 被推到后台时,他们可以通过 Notification 回到 Activity。
当用户按下后退按钮时会出现问题,我的 Activity 被破坏但通知仍然存在,因为我希望用户能够按下后退但仍然能够通过通知进入
Activity。但是当一个用户尝试这个时,我得到空指针,因为它试图开始一个新的活动,而不是带回旧的活动。
所以基本上我希望后退按钮与主页按钮完全相同,这是我迄今为止尝试过的方式:
@Override
public boolean onKeyDown(int keyCode,KeyEvent event) {
if (Integer.parseInt(android.os.Build.VERSION.SDK) < 5
&& keyCode == KeyEvent.KEYCODE_BACK
&& event.getRepeatCount() == 0) {
Log.d("CDA","onKeyDown Called");
onBackPressed();
}
return super.onKeyDown(keyCode,event);
}
public void onBackPressed() {
Log.d("CDA","onBackPressed Called");
Intent setIntent = new Intent(Intent.ACTION_MAIN);
setIntent.addCategory(Intent.CATEGORY_HOME);
setIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(setIntent);
return;
}
但是上面的代码似乎仍然允许我的 Activity 被销毁,当按下后退按钮时,如何阻止我的 Activity 被销毁?
android – EditText与软键盘和“后退”按钮
按第一次“返回”按钮隐藏键盘.第二个按钮在我的活动中调用“onBackpressed”回调.好的但是…
我不知道如何钩住第一次新闻.一旦虚拟键盘关闭,我就需要处理输入数据.
欢迎任何想法.
谢谢.
解决方法
public boolean onKeyPreIme(int keyCode,KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_UP) { // Do your thing here return false; } return super.dispatchKeyEvent(event); }
取自我的其他答案@:Android: Error popup on EditText doesn’t move down when keyboard goes away
android – phonegap / jquery mobile – iframe和后退按钮
特定内容涉及显示我们服务器上的页面.我们使用IFrame来显示它,除了后退按钮外,所有工作都很好.如果您点击IFrame中的几个页面并按下手机的后退按钮,应用会返回页面而不是iframe中的内容,这是一个问题.
我猜这个解决这个问题真的很棘手,但是有没有人有想法或替代方法来显示使用后退按钮的外部网站?
解决方法
android – Phonegap ChildBrowser插件:禁用/隐藏位置栏中的URL,但不是后退/前进/退出按钮
有没有办法隐藏或禁用位置栏中的URL字段?在我的情况下,设备是作为信息亭浏览器运行的平板电脑,因此只允许一个URL.
我通过将Childbrowser.java中的代码更改为来修复此问题
private void navigate(String url) {
InputMethodManager imm = (InputMethodManager)this.ctx.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(edittext.getwindowToken(),0);
if (!url.startsWith("http")) {
this.webview.loadUrl("http://" + url);
}
this.webview.loadUrl("http://www.my-only-allowed-site.example.org");
this.webview.requestFocus();
}
这很好用,但不是很好.您仍然可以看到该网址.我希望有这些可能的解决方案:
1)完全隐藏URL字段
2)单击URL字段时隐藏软键盘
3)将URL字体颜色设置为黑色
任何的想法?
提前致谢
toolbar.addView(back); //shows the back button
toolbar.addView(forward); //shows the forward button
//toolbar.addView(edittext); //shows the URL - comment this line out to hide the URL
toolbar.addView(close); //shows the close button
编辑:哎呀,我刚从你的评论中看到你以同样的方式想出来了!
我们今天的关于覆盖PhoneGap Android中的“后退”按钮和覆盖模式怎么关闭的分享就到这里,谢谢您的阅读,如果想了解更多关于Android - 如何覆盖“后退”按钮,使其不会完成()我的活动?、android – EditText与软键盘和“后退”按钮、android – phonegap / jquery mobile – iframe和后退按钮、android – Phonegap ChildBrowser插件:禁用/隐藏位置栏中的URL,但不是后退/前进/退出按钮的相关信息,可以在本站进行搜索。
本文标签: