轻扫屏幕的某些部分 [英] swipe some part of the screen

查看:139
本文介绍了轻扫屏幕的某些部分的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想设计一个屏幕包含一些刷卡的一部分。我有一个屏幕,图形页面,列表视图和一些文字。我MapView类是刷卡的主要部分,如果我刷卡左则触点将显示,如果我向右滑动,然后地址将被显示。
这是我的形象。我出圆润的一部分,我需要刷卡。
我怎样才能实现我的应用程序这个功能。我去通过与 1教程但它并没有帮助我。本教程教如何刷卡全屏幕,但我需要轻扫屏幕的某些部分。
可能吗。给我一些参考和提示。我不明白 viewPager

解决方案

我终于得到了答案轻扫屏幕的某些部分

。 中的onCreate(),你需要添加下面的行

  MyPagerAdapter适配器=新MyPagerAdapter();
     myPager =(ViewPager)findViewById(R.id.myfivepanelpager);
     myPager.setAdapter(适配器);
     myPager.setCurrentItem(3);
 

我在我的课扩展PagerAdapter类。

 私有类MyPagerAdapter扩展PagerAdapter {

    公众诠释getCount将(){
        返回3;
    }

    公共对象instantiateItem(查看收集,INT位置){

        LayoutInflater充气=(LayoutInflater)collection.getContext()
                .getSystemService(Context.LAYOUT_INFLATER_SERVICE);

        INT渣油= 0;
        开关(位置){
        情况下0:
            渣油= showHotelContact();
            打破;
        情况1:
            渣油= showHotelAddress();
            打破;
        案例2:
            渣油= showHotelMap();
            打破;
        }

        查看查看= inflater.inflate(渣油,NULL);
        ((ViewPager)集合).addView(查看,0);
        返回查看;
    }
 }
公众诠释showHotelMap()
{
    INT渣油;
    渣油= R.layout.hotelmap;
    返回渣油;
}
公众诠释showHotelAddress()
{
    INT渣油;
    渣油= R.layout.hoteladdress;
    返回渣油;
}
公众诠释showHotelContact()
{
    INT渣油;
    渣油= R.layout.hotelcontact;
    返回渣油;
}
 

下面是我的xml文件

  XML版本=1.0编码=UTF-8&GT?;
< LinearLayout中的xmlns:机器人=htt​​p://schemas.android.com/apk/res/android
机器人:方向=垂直
机器人:layout_width =FILL_PARENT
机器人:layout_height =FILL_PARENT>

< android.support.v4.view.ViewPager
机器人:ID =@ + ID / myfivepanelpager
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =186dp
机器人:fadingEdge =垂直/>

<的TextView
机器人:ID =@ + ID / textView1
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT
机器人:文本=@字符串/酒店名称/>

< / LinearLayout中>
 

I am trying to design one screen which contain some swipe part. I have one screen with mapview, listview and some text. My Mapview is main part of swipe, if i swipe at left then contact will shown and if i swipe right then address will be display.
Here is my image. i am showing rounded part which i need to swipe.
How can i implement this functionality in my app. I go through with one tutorial but it didn't help me. This tutorial teach how to swipe full screen but i need to swipe some part of the screen.
Is it possible. Give me some reference or hint. I didn't understand viewPager .

解决方案

Finally i got answer to swipe some part of the screen. in onCreate() you need to add following line

MyPagerAdapter adapter = new MyPagerAdapter();
     myPager = (ViewPager) findViewById(R.id.myfivepanelpager);
     myPager.setAdapter(adapter);
     myPager.setCurrentItem(3);

I extend PagerAdapter class in my class.

private class MyPagerAdapter extends PagerAdapter {

    public int getCount() {
        return 3;
    }

    public Object instantiateItem(View collection, int position) {

        LayoutInflater inflater = (LayoutInflater) collection.getContext()
                .getSystemService(Context.LAYOUT_INFLATER_SERVICE);

        int resId = 0;
        switch (position) {
        case 0: 
            resId = showHotelContact();             
            break;
        case 1:
            resId = showHotelAddress();         
            break;              
        case 2:     
            resId = showHotelMap();             
            break;      
        }

        View view = inflater.inflate(resId, null);
        ((ViewPager) collection).addView(view, 0);
        return view;
    }
 }   
public int showHotelMap()
{
    int resId;
    resId = R.layout.hotelmap;
    return resId;
}
public int showHotelAddress()
{
    int resId;
    resId = R.layout.hoteladdress;
    return resId;
}
public int showHotelContact()
{
    int resId;
    resId = R.layout.hotelcontact;
    return resId;
}

Here is my xml file

?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">

<android.support.v4.view.ViewPager
android:id="@+id/myfivepanelpager"
android:layout_width="wrap_content"
android:layout_height="186dp"
android:fadingEdge="vertical" />

<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hotelName" />

</LinearLayout>

这篇关于轻扫屏幕的某些部分的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆