简体   繁体   English

如何从ListView打开新视图

[英]How to open a new View from ListView

I'm building an app with appcelerator studio. 我正在使用Appcelerator Studio构建应用程序。 In my View I have insert a custom ListView with a "Templates". 在我的视图中,我插入了一个带有“模板”的自定义ListView。 This is ok. 还行吧。

This is that I can see: 这是我可以看到的: 在此处输入图片说明

Now I want that if I click on one of this rows, I can open another View, width also some effect (of slider for eg). 现在,我希望如果单击此行之一,则可以打开另一个视图,宽度也可以达到某种效果(例如,滑块的效果)。

This is my code of my xml file: 这是我的xml文件的代码:

<Alloy>
    <View class="containerClinicalFolder" >

        <ListView id="elementsList" defaultItemTemplate="elementTemplate">
            <Templates>
                <ItemTemplate name="elementTemplate" class="itemTemplate">

                    <View id="atomProperties">
                        <Label bindId="name" id="name" />
                        <View id="secondLine">
                            <Label class="line2 fieldLabel" text="from: " />
                            <Label class="line2" bindId="dateStart" id="dateStart" />
                            <Label class="line2 fieldLabel" text=" to: " />
                            <Label class="line2" bindId="dateEnd" id="dateEnd" />
                        </View>
                        <Label bindId="quantity" id="quantity" left="0"/>
                    </View>
                </ItemTemplate>
            </Templates>
            <ListSection>               
                <ListItem quantity:text="10 minute" quantity:color="#090"  name:text="Hydrogen" dateStart:text="10-10-2016" dateEnd:text="10-12-2016"/>
                <ListItem quantity:text="15 minute" quantity:color="#090" name:text="Helium" dateStart:text="02-01-2015" dateEnd:text="10-10-2019"/>
                <ListItem quantity:text="25 minute" quantity:color="#090" name:text="Lithium" dateStart:text="01-01-2001" dateEnd:text="01-01-2018"/>
                <ListItem quantity:text="10 minute" quantity:color="#090"  name:text="Hydrogen" dateStart:text="10-10-2016" dateEnd:text="10-12-2016"/>

            </ListSection>
        </ListView> 


        <Button id="button" class="buttonLanguage" 
            visible="false" traduzione="true"></Button>

         <ImageView image="/images/add_circle_2.png" action="add" id="idImage" class="add"></ImageView>
    </View>
</Alloy>

So, how can I do this? 那么,我该怎么做呢?

Add the onItemclick event to your listView(I left out your template for readability): 将onItemclick事件添加到您的listView(出于可读性考虑,我省略了模板):

<ListView id="elementsList" onItemclick="listItemClick">

Now in your controller set this following function: 现在在您的控制器中设置以下功能:

function listItemClick(e){ /* Open new window here. */ };

Tip: You can get information like the clicked row index from the event data(parameter e). 提示:您可以从事件数据(参数e)中获取诸如单击的行索引之类的信息。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM