PhoneGap返回键功能

时间:2012-02-27 23:56:03

标签: android eclipse cordova

我在这里有点麻烦。我似乎无法理解这里的问题是什么。你能帮我吗?我该怎么办?我从这里复制了这段代码。并试图保存该项目。但我有一个错误,它说“方法onKeyDown(int,KeyEvent)是未定义的类型对象” 我正在使用eclipse和带有jQuery 1.2.6的PhoneGap 1.3.1构建应用程序,

以下是代码

package com.phonegap.mobilemone;
import com.phonegap.DroidGap;
import android.view.KeyEvent;
import android.content.Context;
import android.view.inputmethod.InputMethodManager;
import android.webkit.WebView;

public class KeyBoard 
{

    private WebView mAppView;
    private DroidGap mGap;

    public KeyBoard(DroidGap gap, WebView view)
    {
        mAppView = view;
        mGap = gap;
    }

    public void showKeyBoard()
    {
        InputMethodManager mgr = (InputMethodManager)mGap.getSystemService(Context.INPUT_METHOD_SERVICE);
        // only will trigger it if no physical keyboard is open
        mgr.showSoftInput(mAppView, InputMethodManager.SHOW_IMPLICIT);

        ((InputMethodManager)mGap.getSystemService(Context.INPUT_METHOD_SERVICE)).showSoftInput(mAppView, 0); 

    }

    public void hideKeyBoard() 
    {
        InputMethodManager mgr = (InputMethodManager) mGap.getSystemService(Context.INPUT_METHOD_SERVICE);
        mgr.hideSoftInputFromWindow(mAppView.getWindowToken(), 0);
    }

    public boolean onKeyDown(int keyCode, KeyEvent event)
    {
        if (keyCode == KeyEvent.KEYCODE_BACK)
        {
            if (mAppView.canGoBack())
            {
                mAppView.goBack();
                return true;
            }
        }
        return super.onKeyDown(keyCode, event);
    }
}

1 个答案:

答案 0 :(得分:1)

使用PhoneGap,您可以使用“backbutton”事件并将所有代码保存在JavaScript中。请参阅http://docs.phonegap.com/en/1.4.1/phonegap_events_events.md.html#backbutton

中的PhoneGap文档中的示例