轻扫屏幕的某些部分 [英] swipe some part of the screen
问题描述
我想设计一个屏幕包含一些刷卡的一部分。我有一个屏幕,图形页面,列表视图和一些文字。我MapView类是刷卡的主要部分,如果我刷卡左则触点将显示,如果我向右滑动,然后地址将被显示。
这是我的形象。我出圆润的一部分,我需要刷卡。
我怎样才能实现我的应用程序这个功能。我去通过与 1教程但它并没有帮助我。本教程教如何刷卡全屏幕,但我需要轻扫屏幕的某些部分。
可能吗。给我一些参考和提示。我不明白 viewPager
。
我终于得到了答案轻扫屏幕的某些部分
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:机器人=http://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屋!