2012-04-13 2 views
2

Я разрабатываю для android, используя PhoneGap. После того, как вы увидите мой код, я не могу сделать, чтобы сбросить масштаб WebView до 1 после того, как пользователь изменил масштаб. Я признателен, если вы можете мне помочь.Как изменить масштаб WebView программно?

Код сброса должен быть реализован в методе «DisableZoom».

общественного класс App расширяет DroidGap {

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    super.loadUrl("file:///android_asset/www/index.html"); 
    this.appView.addJavascriptInterface(new __Funcs(this.appView), "__FUNCS"); 

} 
public class __Funcs{ 
    WebView appView; 
    public __Funcs(WebView appView){ 
     this.appView = appView; 
    } 
    public void EnableZoom(){ 
     this.appView.getSettings().setSupportZoom(true); 
     this.appView.getSettings().setBuiltInZoomControls(true); 

    } 
    public float DisableZoom(){ 
     this.appView.getSettings().setBuiltInZoomControls(false); 
     this.appView.getSettings().setSupportZoom(false); 
     this.appView.getSettings().setDefaultZoom(ZoomDensity.FAR); 

     return this.appView.getScale(); 
    } 
} 

}

+0

Я надеялся, что «this.appView.getSettings(). SetDefaultZoom (ZoomDensity.FAR);" сделайте что-нибудь для моей проблемы, но это не так! –

+0

'getSettings(). SetLoadWithOverviewMode (true)' и 'getSettings(). SetUseWideViewPort (true)' может то, что вы ищете – 207

+0

this.appView.getSettings(). SetSupportZoom (true); и –

ответ

1

Я думаю, что единственный способ сбросить масштаб к исходному значению, чтобы использовать настройки окна просмотра для установки исходного масштаба и переадресовать страницу. В моих тестах для приложений Android Phonegap getSettings().setLoadWithOverviewMode(true) работал только, если в окне просмотра не было никаких настроек.