我正在尝试加载设计为类似移动应用的This Website,其中包含一个像Actionbar这样的顶部栏,其操作栏包含一些项目和一个搜索栏。
最左边和最右边的项目在android中打开类似Navigation Drawer
的布局
当我使用webView
运行此应用程序时,我在应用程序中看到的是默认情况下打开抽屉布局,左侧抽屉布局位于顶部,然后右侧抽屉位于其下方,主页面位于其末尾。
似乎CSS没有正确加载或某些javascript。
在我尝试使用任何width
&的移动视图时,在浏览器中height
它运作良好。
所以我想知道为什么它在android中不能正常工作?
以下是我在webVeiw
完整mainActivity
public class MainActivity extends AppCompatActivity {
String link = "http://www.opensourcecart.com/index.php?route=mobile_app/home";
String urlLink = "http://www.opencartarabic.com";
Context context;
private WebView mWebview;
private ProgressDialog progressBar;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.context = this;
// Programmatically show fullscreen
// requestWindowFeature(Window.FEATURE_NO_TITLE);
// getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
// WindowManager.LayoutParams.FLAG_FULLSCREEN);
final AlertDialog alertDialog = new AlertDialog.Builder(this).create();
progressBar = ProgressDialog.show(context, "Progress Dialog", "Loading...");
setContentView(R.layout.activity_main);
mWebview = (WebView) findViewById(myWebView);
WebSettings webSettings = mWebview.getSettings();
webSettings.setJavaScriptEnabled(true);
// webSettings.setUseWideViewPort(true);
// webSettings.setLoadWithOverviewMode(true);
mWebview.getSettings().setBuiltInZoomControls(true);
mWebview.getSettings().setSupportZoom(true);
mWebview.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY);
if (Build.VERSION.SDK_INT >= 19) {
// chromium, enable hardware acceleration
mWebview.setLayerType(View.LAYER_TYPE_HARDWARE, null);
} else {
// older android version, disable hardware acceleration
mWebview.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
}
mWebview.setWebViewClient(new WebViewClient() {
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
public void onPageFinished(WebView view, String url) {
if (progressBar.isShowing()) {
progressBar.dismiss();
}
}
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
// Log.e(TAG, "Error: " + description);
Toast.makeText(context, "Oh no! " + description, Toast.LENGTH_SHORT).show();
alertDialog.setTitle("Error");
alertDialog.setMessage(description);
alertDialog.setButton(BUTTON_NEGATIVE, "OK", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
}
});
alertDialog.show();
}
});
mWebview.loadUrl(link);
}
}
我也试过这些方法
webSettings.setUseWideViewPort(true);
webSettings.setLoadWithOverviewMode(true);
但它是一样的。该代码适用于除此之外的所有网站网址
http://www.opensourcecart.com/index.php?route=mobile_app/home
也许是因为它是一个子域(不确定)。请引导我朝正确的方向前进 搜索栏的Onclick也无法在Android应用程序中运行。
编辑:在Android浏览器中打开此网址也工作正常。