使用WebView中的javascript触发setVisibility属性;不起作用
Triggering setVisibility property with javascript from WebView doesn't work
我在Java环境中太迟钝了,很可能我错过了一些非常重要的东西,但无论如何,这是我的代码:
以下是我在XML:中创建的对象
<ImageView
android:id="@+id/splash_screen"
android:src="@drawable/my_image"
android:layout_height="match_parent"
android:layout_width="match_parent"/>
以下是假设触发函数的javascript代码:
function hideSplash() {
Android.hideSplash();
}
$(window).load(function(){
hideSplash();
});
这是应该由javascript:触发的函数
public void hideSplash() {
Toast.makeText(mContext, "Splash! Remove!!!", Toast.LENGTH_SHORT).show();
View splash = (ImageView) findViewById(R.id.splash_screen);
splash.setVisibility(View.GONE);
}
正如你所看到的,我在函数的头部放置了一个Toast警报,以检查是否发生了什么事情。我得到的是jsut这个"Splash!Remove!!"消息,而"Splash"对象由于某种原因拒绝更改其可见性。有人请帮我把它做好。。。我已经试过了!
我想我的整个方法可能是错误的。我想要的是在WebView内容完全加载时隐藏启动屏幕图像:
好的,我拿到了。。。我已经在父类中描述了函数,然后从javascript类中调用了它。像这样:
public class MainActivity extends Activity {
public class JavaScriptInterface extends Activity {
public void hideSplash() {
hideSplashHandler();
}
}
public void onCreate(Bundle savedInstanceState) {
/** Some onCreate stuff */
}
public void hideSplashHandler() {
ImageView splash = (ImageView) findViewById(R.id.splash_screen);
splash.setVisibility(View.GONE);
}
}
我不知道这是否正确,但它就像一个魅力^_^
相关文章:
- 在jQuery中链接时CSS属性不起作用
- 函数中的 angularJS 访问对象属性不起作用
- 使用 css() 更改自定义属性不起作用
- 调用类属性不起作用
- 为什么onclick属性不起作用
- JQuery Smart Spinner:回调属性不起作用
- “document.write”的字体属性不起作用
- 行数文本输入属性不起作用
- CSS 显示属性不起作用
- 必需属性不起作用
- HTML 中文本框上的必需属性不起作用
- 使用变量的 Href 属性不起作用
- 使用 javascript 修改 svg 属性不起作用
- JS:为什么这个对象属性不起作用,只有当我把它作为变量放在其中一个方法中时,它才有效
- j查询验证引擎属性不起作用
- AngularJS “{{}}” insite title 属性不起作用
- JQuery css 属性不起作用
- 设置属性不起作用
- 使用量角器获取按钮上的禁用属性不起作用
- KnockoutJS和计算属性不起作用