- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我创建了一个新元素来测试Crosswalk Project
。
我正在尝试使用 css 文件加载一些内容,但 css 根本不起作用。来自 MainActivityFragment 的代码:
import android.support.v4.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import org.xwalk.core.XWalkPreferences;
import org.xwalk.core.XWalkSettings;
import org.xwalk.core.XWalkView;
/**
* A placeholder fragment containing a simple view.
*/
public class MainActivityFragment extends Fragment {
private XWalkView xWalkWebView;
private View mContentView;
private static final String page = "<html>\n" +
" <head>\n" +
"\n" +
" <link href=\"primary.css\" rel=\"stylesheet\" type=\"text/css\"/>\n" +
"\n" +
" <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\"/>\n" +
"\n" +
" </head>\n" +
"\n" +
" <body>\n" +
"\n" +
" <ol>\n" +
"<li>Harum aut nostrum</li>\n" +
"</ol>\n" +
"<ol>\n" +
"<li>Saepe aut non numquam</li>\n" +
"<li>Sed aliquid</li>\n" +
"<li>Quo rerum quia veniam dolore</li>\n" +
"<li>Doloribus dolores</li>\n" +
"<li>Excepturi adipisci ad enim consequatur</li>\n" +
"<li>Enim qui autem iure aut deserunt</li>\n" +
"<li>Minima natus ratione rerum officia</li>\n" +
"<li>Non sed et eveniet aut</li>\n" +
"</ol>\n" +
"<p><iframe width=\"840\" height=\"473\" src=\"https://www.youtube.com/embed/10r9ozshGVE?feature=oembed\" frameborder=\"0\" allowfullscreen></iframe></p>\n" +
"<p>Facere <a title=\"Qui.\" href=\"https://rohan.net/magnam-rerum-repudiandae-est-cupiditate-ea.html\">id</a> nemo. Quasi dolorem est et. Modi aperiam est magni. Necessitatibus non labore ut qui atque Aliquam modi dolores nulla odit. Placeat vel vel quia nisi distinctio. Dolores <a title=\"Reprehenderit dolor blanditiis.\" href=\"http://batz.org/maxime-totam-sed-voluptatum-explicabo-voluptas-distinctio\">porro autem rerum</a> ex. Consequuntur quia quia Quod voluptas dolorem accusamus nemo. Tempora nostrum iste qui vel Non esse aut aut ut ducimus. sit est sed ad. <a title=\"Eos minus.\" href=\"http://dooley.net/possimus-impedit-enim-ex-numquam-qui-esse\">unde quibusdam in tempore et</a> eum recusandae. Molestiae omnis harum consequatur officia. adipisci iure libero voluptatem necessitatibus est.</p>\n" +
"<p><img src=\"https://reviworx.com/~reviworx/dev/wp_frm/wp-content/uploads/2016/03/f46d91f8-8923-3a0a-a6f8-7413399aa33e.jpg\" alt=\"Totam voluptatem\" /></p>\n" +
"<h6>Minus corrupti explicabo amet aut suscipit. Porro rerum corrupti a</h6>\n" +
"<p><img class=\"alignright\" src=\"https://reviworx.com/~reviworx/dev/wp_frm/wp-content/uploads/2016/03/e3b46cb3-6f7c-383e-abc0-194e31ad37ee.jpg\" alt=\"Labore a adipisci in modi sunt\" /></p>\n" +
"\n" +
"\n" +
" </body>\n" +
" </html>";
public MainActivityFragment() {
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
mContentView = inflater.inflate(R.layout.fragment_main, container, false);
xWalkWebView = (XWalkView) mContentView.findViewById(R.id.xwalkWebView);
xWalkWebView.setInitialScale(1);
XWalkSettings settings = xWalkWebView.getSettings();
if(settings != null) {
// settings.setBuiltInZoomControls(true);
// settings.setSupportZoom(true);
settings.setDefaultFontSize(20);
// if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
//
// settings.setDisplayZoomControls(false);
//
// }
}
// xWalkWebView.load("https://crosswalk-project.org", null);
xWalkWebView.load(null, page);
// turn on debugging
XWalkPreferences.setValue(XWalkPreferences.REMOTE_DEBUGGING, true);
return mContentView;
}
@Override
public void onPause() {
super.onPause();
if (xWalkWebView != null) {
xWalkWebView.pauseTimers();
xWalkWebView.onHide();
}
}
@Override
public void onResume() {
super.onResume();
if (xWalkWebView != null) {
xWalkWebView.resumeTimers();
xWalkWebView.onShow();
}
}
@Override
public void onDestroy() {
super.onDestroy();
if (xWalkWebView != null) {
xWalkWebView.onDestroy();
}
}
}
这是我的 CSS 文件:
@font-face {
font-family: 'thesansarabic';
/* src: url('DejaVuSans.ttf'); This doesn't work */
/* src: url('fonts/DejaVuSans.ttf'); Neither is this */
src: url('file:///android_asset/fonts/thesansarabic-plain.otf'); /* but this does */
}
body {
font-size: small;
font-family: 'thesansarabic';
display: -webkit-box;
display: flex;
-webkit-box-orient: vertical;
flex-direction: column;
padding-top: 48px;
padding-right: 10px;
padding-bottom: 48px;
padding-left: 10px;
box-sizing: border-box;
/*direction: ltr;*/
}
img {
max-width: 100%;
width: auto;
height: auto;
}
/*iframe, video {
max-width: 100%;
}*/
/* Portrait */
@media screen
and (orientation: portrait) {
iframe, video {
max-width: 100%;
max-height 40%;
height: 250px;
}
}
/* Landscape */
@media screen
and (orientation: landscape) {
iframe, video {
max-width: 60%;
max-height 30%;
height: 200px;
}
}
注意:此代码适用于默认的 android webview。
以下是我如何嵌入人行横道元素:
repositories {
maven {
url 'https://download.01.org/crosswalk/releases/crosswalk/android/maven2'
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.2.1'
compile 'com.android.support:design:23.2.1'
compile 'org.xwalk:xwalk_core_library:17.46.448.10'
}
最佳答案
我们的开发人员已经解决了您的问题,您只需添加 file:///android_asset/
就像 XWalkView.load("file:///android_asset/", content);
使 css 工作,无需在 css 文件中添加任何完整路径。 src: url('fonts/DejaVuSans.ttf');
也可以。关于 android 上的人行横道示例的第二个问题,您可以在 embeddingapi 上找到大多数 android 嵌入 api 的用例。或 embeddingapi-async .它们是使用人行横道的两种方式(同步和异步)。
关于安卓人行横道元素 : How to use css?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35940128/
在过去的两周里,我一直在寻找全局行业分类标准 (GICS) 和北美行业分类标准 (NAICS) 之间的映射/交叉路口,但运气不佳。 NAICS:https://www.census.gov/cgi-b
我试图在一个紧凑的应用程序中制作一个仅上传图片的输入字段,该应用程序基本上运行一个带有一些自定义脚本的人行横道 webview。 通过常规浏览器,使用如下标签: 或者 按预期工作,将用户直接带到相机
每当某些 javascript 代码在人行横道 web View 中执行“window.open()”时,我想在 Android 中打开默认浏览器。 我创建了一个扩展 XWalkUIClient 并覆
我正在使用 Crosswalk XWalkView 作为我的应用程序的 WebView ,现在我正在加载一些具有有效证书并且在 Android 版本 谢谢! 基本上我想做的是像 Cordova
我是一名优秀的程序员,十分优秀!