当前位置:编程学习 > wap >>

wp8怎么实现点击某个图片实现左右滑动

好像pivot和panorama可以实现左右滑动的效果 ,但是楼主试了下的话 好像只能是用手做滑动姿势的时候才能使先页面的滑动,但是现在楼主要点击图标,然后他实现页面的滑动(页面的滑动是唯一的,但是可以用代码控制,即图标1单击实现左滑,图标2可以实现右滑),楼主不知道该怎么实现 ,还是说楼主对上面两个布局弄得不够清楚
 在问句   书上说全局布局 在滑动后页面的右边有上个页面的一小部分页面,现在想把那上一个页面的一小部分移到左边该怎么操作啊  --------------------编程问答-------------------- pivot就可以,点击的时候让selectindex指向下一个 --------------------编程问答--------------------

<phone:PhoneApplicationPage x:Class="PhoneApp1.MainPage"
                            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
                            xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
                            xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"
                            xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
                            xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
                            xmlns:controls="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls"
                            mc:Ignorable="d"
                            d:DesignWidth="480"
                            d:DesignHeight="768"
                            FontFamily="{StaticResource PhoneFontFamilyNormal}"
                            FontSize="{StaticResource PhoneFontSizeNormal}"
                            Foreground="{StaticResource PhoneForegroundBrush}"
                            SupportedOrientations="Portrait"
                            Orientation="Portrait"
                            shell:SystemTray.IsVisible="True">
    <controls:Pivot x:Name="pivot1">
        <controls:Pivot.HeaderTemplate>
            <DataTemplate />
        </controls:Pivot.HeaderTemplate>
        <controls:Pivot.ItemTemplate>
            <DataTemplate>
                <Image Source="{Binding}"
                       Tap="Image_Tap" />
            </DataTemplate>
        </controls:Pivot.ItemTemplate>
    </controls:Pivot>

</phone:PhoneApplicationPage>



public partial class MainPage : PhoneApplicationPage
    {
        // 构造函数
        public MainPage()
        {
            InitializeComponent();
            this.pivot1.ItemsSource = this.ImagePaths;
        }
        public List<String> ImagePaths
        {
            get
            {
                return new List<String>() 
                { 
                    "http://avatar.csdn.net/0/A/C/1_nianhui.jpg", 
                    "http://avatar.csdn.net/3/8/C/1_mtskkllus.jpg",
                    "http://avatar.csdn.net/0/2/A/1_xiongyanbing123123.jpg" 
                };
            }
        }

        private void Image_Tap(object sender, GestureEventArgs e)
        {
            Int32 index = this.pivot1.SelectedIndex + 1;
            if (index >= this.pivot1.Items.Count)
            {
                index = 0;
            }
            this.pivot1.SelectedIndex = index;
        }
    }




这段代码是wp7上的,wp8也一样道理。 --------------------编程问答-------------------- 可是怎么控制滑动的方向啊  就是在同一个Pivot中想让某些PivotItem只能发生左滑,某些PivotIetn只能右滑 --------------------编程问答-------------------- this.pivot1.SelectedIndex的值加1就是向左滑,减1就是向右滑 --------------------编程问答-------------------- 我试了下 但是还是没有解决  不知道是我没理解楼上的意思 还是楼上的理解错我的意思了
就是那个Pivot控件么  我们向(手指)左滑或者向右滑都是可以的,
但是现在我有一个Pivot  其中有若干PivotItem 有些是可以左右滑动的,有些只能右滑 有些只能左滑
我改变了下SelectedIndex 不能实现我的效果啊   但是在Tap(点击)中是可以实现的 我说的控制左右滑动是手指滑动的时候,而不是点击的时候 (不过我的PivotItem不是并列的,有些是另一些的内容扩充,不知道这样适不适合用Pivot ,只是想要页面切换的时候使用滑动效果 而不是HyperLinkButton那样跳转)  --------------------编程问答--------------------
引用 5 楼 u010612390 的回复:
我试了下 但是还是没有解决  不知道是我没理解楼上的意思 还是楼上的理解错我的意思了
就是那个Pivot控件么  我们向(手指)左滑或者向右滑都是可以的,
但是现在我有一个Pivot  其中有若干PivotItem 有些是可以左右滑动的,有些只能右滑 有些只能左滑
我改变了下SelectedIndex 不能实现我的效果啊   但是在Tap(点击)中是可以实现的 我说的控制左右滑动是手指滑动的时候,而不是点击的时候 (不过我的PivotItem不是并列的,有些是另一些的内容扩充,不知道这样适不适合用Pivot ,只是想要页面切换的时候使用滑动效果 而不是HyperLinkButton那样跳转) 

楼主的意思我没理解,您说了两个需求
1 就是那个Pivot控件么  我们向(手指)左滑或者向右滑都是可以的,
2 我有一个Pivot  其中有若干PivotItem 有些是可以左右滑动的,有些只能右滑 有些只能左滑
哪个是您的需求。
您说“我改变了下SelectedIndex 不能实现我的效果啊   但是在Tap(点击)中是可以实现的”
您要的啥效果不明白。
说简单点,就是一个可以随意通过简单TAP就可以任意切换页面,但是滑动不可以任意切换页面的Pivot ? --------------------编程问答--------------------
引用 6 楼 BEYONDMA 的回复:
Quote: 引用 5 楼 u010612390 的回复:

我试了下 但是还是没有解决  不知道是我没理解楼上的意思 还是楼上的理解错我的意思了
就是那个Pivot控件么  我们向(手指)左滑或者向右滑都是可以的,
但是现在我有一个Pivot  其中有若干PivotItem 有些是可以左右滑动的,有些只能右滑 有些只能左滑
我改变了下SelectedIndex 不能实现我的效果啊   但是在Tap(点击)中是可以实现的 我说的控制左右滑动是手指滑动的时候,而不是点击的时候 (不过我的PivotItem不是并列的,有些是另一些的内容扩充,不知道这样适不适合用Pivot ,只是想要页面切换的时候使用滑动效果 而不是HyperLinkButton那样跳转) 

楼主的意思我没理解,您说了两个需求
1 就是那个Pivot控件么  我们向(手指)左滑或者向右滑都是可以的,
2 我有一个Pivot  其中有若干PivotItem 有些是可以左右滑动的,有些只能右滑 有些只能左滑
哪个是您的需求。
您说“我改变了下SelectedIndex 不能实现我的效果啊   但是在Tap(点击)中是可以实现的”
您要的啥效果不明白。
说简单点,就是一个可以随意通过简单TAP就可以任意切换页面,但是滑动不可以任意切换页面的Pivot ?

哦  先说少点的话  就是有页面1,页面2 。页面2 是页面1内容的补充(比如页面1是新闻标题,页面2是具体的内容) 现在想要点击页面1后 视觉效果是滑动进入页面2(以解决,使用了Tap)以及手指右滑页面1进入页面2(左滑无效 以及页面2不能通过滑动再返回页面1) --------------------编程问答-------------------- 你的要求是可以实现的,但是要做成那种滑动的效果就比较麻烦了,可以去cnblogs上看看,我有一次看到过,你去找找吧。。。。要实现那种滑动的动画效果,挺麻烦的, --------------------编程问答-------------------- 我的想法是,手势操作事件是一个路由事件,你在PivotItem里的控件监听手势,当手势是右滑,那么就让e.Handled=true来截断这个事件的路由,Pivot应该就不能收到这个滑动了吧。 --------------------编程问答-------------------- 这就一个平移特效,toolkit里面有现成的啊,就算不用toolkit,storyboard里面做一个平移的动画,添加好线性函数,也就几行代码。
补充:移动开发 ,  Windows Phone
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,