我有一个网站和谷歌浏览器扩展程序.扩展使用NaCl API(JavaScript)从用户的计算机写入/读取文件(C++).
我的问题是:我可以在我的网站中加载我的扩展程序,例如,在iFrame中保存其功能吗?
我试图这样做,但它只加载扩展"视觉"部分.写/读(NaCl)功能不起作用.
一个更好地解释我想做的事情的例子:
它实际上是这样工作的:

我想这样做:

或者另一种方式,但我认为这不可能,是吗?

可能吗?我该怎么做?
编辑
这是代码:
在manifest.json中,我把它放在:
"externally_connectable": {
"matches": ["http://www.example.com/index.html"]
},
"web_accessible_resources": [
"/*"
],
"content_scripts" : [
{
"matches" : ["http://www.example.com/index.html"],
"js": ["index.js"]
}
],
Run Code Online (Sandbox Code Playgroud)
我的网站的iframe:
<iframe src="chrome-extension://myextensionid/index.html"></iframe>
Run Code Online (Sandbox Code Playgroud)
在我的扩展index.js文件中,只有两个按钮.它们的函数(JavaScript)与.cc文件(通过NaCl)进行通信,以将字符串保存或加载到计算机上的文件中.
正如我所说,扩展工作正常,但当我尝试通过iframe在我的网站加载它时,它只加载html(可视).只要JS使用NaCl调用C++函数,JavaScript就不会加载C++.
有解决方案吗
javascript c++ google-chrome google-chrome-extension google-nativeclient
我希望我的活动有一个透明的背景,所以我创建了这个主题:
<style name="Theme.Transparent" parent="android:Theme">
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:windowNoTitle">true</item>
</style>
Run Code Online (Sandbox Code Playgroud)
并将其应用于清单文件:
android:theme="@style/Theme.Transparent"
Run Code Online (Sandbox Code Playgroud)
它工作正常.当这个"android:windowIsTranslucent"设置为true时,活动应该是透明的,但是屏幕方向不会改变,它只会保持纵向.有没有办法应用适合纵向和横向的透明背景?
我创建了一个将三个整数值转换为十六进制值(字符串)的方法,如下所示(PS:尚未经过测试):
protected String convertRGBToHex(int r, int g, int b) {
String rFString, rSString, gFString, gSString, bFString, bSString, result;
int red, green, blue;
int rred, rgreen, rblue;
red = r / 16;
rred = r % 16;
if (red == 10) rFString = "A";
else if (red == 11) rFString = "B";
else if (red == 12) rFString = "C";
else if (red == 13) rFString = "D";
else if (red == 14) rFString = "E";
else if (red == 15) …Run Code Online (Sandbox Code Playgroud) 我有两个RelativeLayout视图。第一个大约有三个孩子。第二个视图只有第一个视图作为其子视图。我有两个动画fadeIn和translateIn,必须分别将它们应用于视图firstView和secondView。下面的代码正在工作。它们同时开始和结束,但是很滞后。不太顺利。我可以做些什么来同时平稳运行它们?
这是代码:
private static final int duration = 500;
protected static boolean ANIMATION_FINISHED;
protected static void onShowAnimation() {
int width;
ANIMATION_FINISHED = false;
width = getScreenWidth();
final AlphaAnimation fadeIn = new AlphaAnimation(0, 1);
final TranslateAnimation translateIn = new TranslateAnimation(-width, 0, 1, 1);
fadeIn.setDuration(duration);
translateIn.setDuration(duration);
firstView.startAnimation(translateIn);
secondView.startAnimation(fadeIn);
secondView.postDelayed(new Runnable() {
@Override
public void run() {
ANIMATION_FINISHED = true;
}
}, duration);
}
Run Code Online (Sandbox Code Playgroud) 我想获得介于0.0和-0.5之间的结果.我有值:MIN = x,MAX = y和IN = x.值MIN应该导致-0.5%和MAX 0.0%的百分比.例如,如果MIN的值为240px,则MAX为600px,IN为360px,IN应为-0.33%的百分比.但我不知道怎么做这个计算.
PS:IN不能高于0.0或低于-0.5.PS2:对不起我的英语.
我试过的代码,但没有用:
float percent = (((currentX / max) * min) / (max - min) * (-1)); Animation openNavigationDrawer = new TranslateAnimation( Animation.RELATIVE_TO_PARENT, percent, Animation.RELATIVE_TO_PARENT, 0.0f, Animation.RELATIVE_TO_PARENT, 0.0f, Animation.RELATIVE_TO_PARENT, 0.0f); openNavigationDrawer.setDuration(200); navigationDrawer.setAnimation(openNavigationDrawer);
Run Code Online (Sandbox Code Playgroud)
第二个(工作,但不是很好):
float percent = -0.0f;
float posDividerDefault = max / 12,
posDividerOne = min + posDividerDefault, posDividerTwo = posDividerOne + posDividerDefault,
posDividerThree = posDividerTwo + posDividerDefault, posDividerFour = posDividerThree + posDividerDefault,
posDividerFive = posDividerFour + posDividerDefault, posDividerSix = posDividerFive + posDividerDefault; …Run Code Online (Sandbox Code Playgroud)