我想使用表格进行导航。因此我使用以下代码(表格看起来很好,所有数据都是完整的):
attr
调试后我发现,值 WebView browser = (WebView) findViewById(webview);
browser.getSettings().setJavaScriptEnabled(true);
browser.setWebChromeClient(new WebChromeClient());
browser.loadUrl("file:///android_asset/www/index.html");
browser.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return false;
}
});
未定义(当ID存在时)。这会导致导航无法正常工作。
所以我查看了数据源(oData),如下所示:
// Admin.view.xml View
<Table id="objectsTable" itemPress="onSelectionChange">
// Admin.controller.js Controller
onSelectionChange: function(event) {
// After call undefined
var partnerId = event.getSource().getBindingContext().getProperty("BUSINESS_PARTNER_ID");
// After call defined and correct
var objectId = event.getSource().getBindingContext().getProperty("ID");
var router = this.getOwnerComponent()
.getRouter();
router.navTo("adminDetails", {
partner: partnerId,
object: objectId
});
为什么变量objectId
未定义,而记录中的所有数据都正确显示?我可以查询它,ID | BUSINESS_PARTNER_ID | ADDRESS | FILES (oData association/navigation) |
.... All records are available, including the BUSINESS_PARTNER_ID
除外。有谁知道我怎么解决这个问题?
答案 0 :(得分:1)
partnerId和objectId有值吗?如果这些值存在,那么我们需要检查路由和清单文件。如果partnerId和ObjectId为空白
如果这些字段是空白的,我可以想到另一个修复。我相信你必须在你的桌子下面有一个columnlistitem或objectlistitem,而不是从表中绑定事件。您可以在其上分配新闻事件并将此代码移动到该事件。
基本上我是从列表项而不是表触发事件。
谢谢和问候,
威拉
答案 1 :(得分:0)
&#34;只是&#34;将我的查询更改为
event.getParameter("listItem").getBindingContext().getProperty("XYZ");