中级4 Web组件和WebView 习题答案 <HarmonyOS第一课>

一、判断题

1.  Web组件提供具有网页显示能力,@ohos.web.webview提供web控制能力。

正确(True)错误(False)

回答正确 A

2.  同一页面的多个Web组件,必须绑定不同的WebviewController。

正确(True)错误(False)

回答正确 A

二、单选题

1.  下列关于Web组件的属性,描述错误的是?

A. fileAccess设置是否开启应用中文件系统的访问。$rawfile(filepath/filename)中rawfile路径的文件不受该属性影响而限制访问

B. imageAccess设置是否允许自动加载图片资源,默认允许
C. javaScriptAccess设置注入JavaScript对象

D. zoomAccess设置是否支持手势缩放,默认允许执行缩放

回答正确 C

2.  下列关于Webview,描述错误的是?

A. 访问在线网页时需添加网络权限

B. @ohos.web.webview提供web控制能力,web组件提供网页显示的能力

C. 一个WebviewController对象可以控制多个Web组件

D. WebviewController可以控制Web组件各种行为

回答正确 C

三、多选题

1.  Web组件支持下列哪些属性或事件?

A. fileAccess(fileAccess: boolean)

B. javaScriptAccess(javaScriptAccess: boolean)

C. onConfirm(callback: (event?: { url: string; message: string; result: JsResult }) => boolean)

D. destroy(): void

回答正确 ABC

HarmonyOS应用开发中,web组件内页面的前进后退功能可以通过使用WebView组件的API来实现。具体步骤如下: 1. **初始化WebView组件**:在布局文件中添加WebView组件,并在代码中进行初始化。 2. **加载网页**:使用WebView的loadUrl方法加载目标网页。 3. **实现前进后退功能**:通过WebView的canGoBackcanGoForward方法判断是否有历史记录,然后使用goBackgoForward方法进行前进后退操作。 以下是一个简单的示例代码: ```xml <!-- layout/activity_main.xml --> <LinearLayout xmlns:ohos="http://schemas.huawei.com/res/ohos" ohos:orientation="vertical" ohos:layout_width="match_parent" ohos:layout_height="match_parent"> <Button ohos:id="$+id/btn_back" ohos:text="后退" ohos:layout_width="wrap_content" ohos:layout_height="wrap_content"/> <Button ohos:id="$+id/btn_forward" ohos:text="前进" ohos:layout_width="wrap_content" ohos:layout_height="wrap_content"/> <WebView ohos:id="$+id/webview" ohos:layout_width="match_parent" ohos:layout_height="match_parent"/> </LinearLayout> ``` ```java // MainAbilitySlice.java import ohos.aafwk.ability.AbilitySlice; import ohos.aafwk.content.Intent; import ohos.agp.components.Button; import ohos.agp.components.WebView; import ohos.agp.components.Component; import ohos.agp.components.Component.ClickedListener; public class MainAbilitySlice extends AbilitySlice { private WebView webView; private Button btnBack, btnForward; @Override public void onStart(Intent intent) { super.onStart(intent); super.setUIContent(ResourceTable.Layout_activity_main); webView = (WebView) findComponentById(ResourceTable.Id_webview); btnBack = (Button) findComponentById(ResourceTable.Id_btn_back); btnForward = (Button) findComponentById(ResourceTable.Id_btn_forward); webView.getSettings().setJavaScriptEnabled(true); webView.loadUrl("https://www.example.com"); btnBack.setClickedListener(new ClickedListener() { @Override public void onClick(Component component) { if (webView.canGoBack()) { webView.goBack(); } } }); btnForward.setClickedListener(new ClickedListener() { @Override public void onClick(Component component) { if (webView.canGoForward()) { webView.goForward(); } } }); } } ``` 通过上述代码,您可以实现一个简单的网页浏览器,并使用按钮控制网页的前进后退。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值