使用QML在Blackberry级联中从另一页调用一页功能

弗朗西斯·F

在我的应用程序中,我有一个main.qml,它具有一个导航窗格,该导航窗格转到homepage.qml,然后从该窗格转到profilepage.qml。当我从个人资料页面返回首页时,我需要在首页中触发一个功能。我注意到,每当弹出时,我都会在主页上调用onPopTr​​ansitionEnded。由于主页是从main.qml推送的,因此主页上没有导航窗格,我无法访问主页上的onPopTr​​ansitionEnded。以下是我的3个qml视图的示例结构。

main.qml

NavigationPane {
    id: nav
    peekEnabled: false
  onPopTransitionEnded: {
    console.log("POP PAGE from main");
    if(page.objectName=="newProfilePage")
    {
        //I tried to access the function using the homepage id but didnt work
      menuScreenPage.reloadView(); // This doesnt work, shows error unknown symbol menuScreenPage
    }
    page.destroy();
} 
Page {
    id: mainPage

    Container {
              //some code
               }
onCreationCompleted: {
//Some code and then push to homepage
 nav.push(homePageDefenition.createObject());
         }
      }
}

homepage.qml

Page {
    id: menuScreenPage
    objectName: "menuScreenPage"

   function reloadView() //This is the function that is needed to be called on page pop from profile page
   {
    //some code
    }
    Container {
             //some code 
              Button { //a button to push to profile page

        id:pushButton 
        horizontalAlignment: HorizontalAlignment.Right
        verticalAlignment: VerticalAlignment.Bottom
        onClicked: {
            console.log("I was clicked!")               
            nav.push(profilePageDefinition.createObject());
               }
            }

        }
     }

profilepage.qml

Page {

    id: newProfilePage
    objectName: "newProfilePage"
    Container {
             //some code 
                 Button { //a button to pop to home page

        id:popButton 
        horizontalAlignment: HorizontalAlignment.Right
        verticalAlignment: VerticalAlignment.Bottom
        onClicked: {
            console.log("I was clicked!")               
            nav.pop();
               }
            }
          }
         }

那么有没有办法可以从main.qml中访问homepage.qml的功能?或者是否还有其他功能,例如onPopTr​​ansitionEnded,当我从个人资料页面弹出时可以在homepage.qml本身上访问?请指教。

qtro

似乎您使用此行创建了未命名对象:

homePageDefenition.createObject()

如果要稍后访问,则应将其保存在某些属性中,例如。

property var myHomePage: null
...
myHomePage = homePageDefenition.createObject()
nav.push(myHomePage )
... 
myHomePage.reloadView();

请记住,“ menuScreenPage”是本地名称(id),它仅在homepage.qml中有效,并且除该文件外没有人可以访问它。

UPD

您甚至可以使用以下代码:

page.reloadView(); // Use local variable "page" instead of internal id "menuScreenPage"

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用C#在asp.net中从一页调用函数到另一页

来自分类Dev

在另一页上使用getElementById

来自分类Dev

使用jQuery打印另一页

来自分类Dev

参考另一页

来自分类Dev

一页上的jQuery更新另一页?

来自分类Dev

如何从php中的另一页中的一页获取数据?

来自分类Dev

如何使用会话将两个值从一页传递到php中的另一页

来自分类Dev

我如何使用php从另一页的多个值中获取下一页的单个值

来自分类Dev

使用 IText 将页眉从一页复制到 PDF 中的另一页

来自分类Dev

如何将值从一页传递到另一页中的角度?

来自分类Dev

在angularjs中从一页导航到另一页

来自分类Dev

在Wordpress中实现JQuery。在一页上工作,不在另一页上工作

来自分类Dev

如何使用python将数据从一页传输到另一页

来自分类Dev

使用Winforms将gridview数据(一页)传递到另一页的gridview控件

来自分类Dev

使用jQuery将值从一页传递到另一页

来自分类Dev

使用意图从一页转到另一页时出错

来自分类Dev

使用php会话将值从一页发送到另一页

来自分类Dev

使用jQuery在一页中处理多页请求

来自分类Dev

Ionic 2 在另一页上运行该功能

来自分类Dev

从另一页调用非静态方法

来自分类Dev

如何调用另一页上的按钮值?

来自分类Dev

从另一页调用非静态方法

来自分类Dev

无法在CI中的另一页中获取数据

来自分类Dev

在另一页上载文件

来自分类Dev

WordPress:获取另一页的内容

来自分类Dev

从另一页上的文本块中获取文本

来自分类Dev

从iframe本身内的另一页中拉长iframe

来自分类Dev

阅读另一页中的所有选项

来自分类Dev

将值传递给php中的另一页

Related 相关文章

热门标签

归档