2012-01-03 4 views
5

위치 표시 줄의 URL 필드를 숨기거나 비활성화하는 방법이 있습니까? 필자의 경우 장치는 키오스크 브라우저로 실행되는 태블릿이므로 하나의 URL 만 허용됩니다. Phonegap ChildBrowser 플러그인 : 위치 표시 줄의 URL을 비활성화/숨기기 (뒤로/앞으로/나가기 버튼 제외)

나는

이 잘 작동
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(); 
} 

에 ChildBrowser.java의 코드를 변경하여이 문제를 해결하지만, 좋은하지 않습니다. URL을 계속 볼 수 있습니다. 더 낫다고 생각이 가능한 솔루션의 갖고 싶은 :
1) 완전히 URL 필드를 클릭하면
2)이 softkeyboard를 숨기 URL 필드를 숨기을
3) 검은

어떤을의 URL 글꼴 색상을 설정 생각?
미리 감사드립니다.

답변

0

Phonegap에 대해 잘 모릅니다. 표준 Android 인 WebView을 사용하고 있다고 가정하고 있습니까?

URL 표시 줄이 보이면 일반적으로 페이지로드를 처리하기 위해 기본 시스템 브라우저가 호출되고 있음을 의미합니다. 그것은 적절한 응용 프로그램을 찾을 수 (보통 주식 브라우저 응용 프로그램을 작업 관리자를 사용하여로드를 오버라이드 (override) 할 필요가있는 경우 shouldOverrideUrlLoading(...) 방법은 호스트 응용 프로그램에 의해 호출되는

this.webview.setWebViewClient(new WebViewClient() { 
    public boolean shouldOverrideUrlLoading(WebView view, String url) { 
     return false; 
    } 
}); 

보고 ... 다음과 같이이 WebViewClient을 설정 방지하기 위해). false을 반환하면 WebView 인스턴스가 자체 URL 로딩을 처리하려고하므로 URL 표시 줄이 전혀 표시되지 않습니다.

EDIT : 문제가 해결되었지만 탐색 버튼이 느슨한 경우 나만의 기록 컬렉션을 유지하고 뒤로/앞으로/나가기 버튼을 제공하는 것이 좋습니다. 당신이 플러그인의 소스 코드를 수정하는 경우

+0

힌트를 보내 주셔서 감사합니다. 나는 방금 toolbar.addView (edittext); 'Childbrowser.java에서 시작하여 작동했습니다. – user1127000

4

, 당신은 플러그인의 소스 코드를 수정하여 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 

편집를 : 죄송 합니다만, 나는 당신이 같은 방식으로 이것을 알아 냈다고 귀하의 의견에서 보았습니다!

+0

플러그인에서 수정해야 할 내용은 무엇입니까? – GSB

관련 문제