视图寻呼机中的垂直滑动问题

问题描述:

我正在使用视图寻呼机和垂直刷卡不工作,我搜索了很多,但无济于事我找到了这个解决方案,但这不能正常工作,解决方案是阻止文本视图链接此视图寻呼机中的垂直滑动问题

details.setOnTouchListener(new View.OnTouchListener() { 

      @Override 
      public boolean onTouch(View v, MotionEvent event) { 
       details.getParent().requestDisallowInterceptTouchEvent(true); 
       return false; 
      } 
     }); 

但我不能刷卡的文本视图视图页面上点击收听,然后我试图发现在我的片段和离开手势使用的手势检测/正确的刷卡我改变与动画的片段,这个技巧工作正常,但问题是动画的外观不是视图寻呼机给出。我确实找到了解决方案,并且我正在分享它以帮助其他更好的答案。

+0

你想ViewPager垂直滚动或它的内容或者可能是ViewPager的父级?你想要滑动手势在两个方向上为不同的视图工作吗? – 2014-08-28 07:49:50

+0

我想要页面在两个方向上滑动我的xml布局的垂直滑动和查看传呼机滑动太多,我解决它使用此 – 2014-08-28 08:02:48

这是我做的,希望它可以帮助你们,谢谢如果它不让我知道,如果你有什么更好的想法,请分享,以便我们改进。

//写在活动或fragmentActivity这段代码的OnCreate注意,我传递的数据Internt的为我用,请跳过如果u不想

Intent newsFrag = new Intent(mContext, PageViewActivity.class); 
newsFrag.putExtra("xyz", getArguments().getString("xyz")); 
newsFrag.putExtra("abc", abc); 
startActivity(newsFrag); 
鉴于寻呼机活动

我这样做

import java.util.ArrayList; 
import java.util.List; 


import android.os.Bundle; 
import android.support.v4.app.Fragment; 
import android.support.v4.app.FragmentActivity; 
import android.support.v4.view.ViewPager; 

public class PageViewActivity extends FragmentActivity { 

MyPageAdapter pageAdapter; 
List<Fragment> fragments; 
RSSFeed feed; 
String xyz; 
int pos; 

@Override 
public void onCreate(Bundle savedInstanceState) { 

    super.onCreate(savedInstanceState); 

    setContentView(R.layout.activity_page_view); 
    xyz= getIntent().getExtras().getString("xyx"); 
    abc = getIntent().getExtras().getInt("abc"); 

    feed = LocalDatabaseManager.getInstance(this).fetchOnCategory(xyz); 

    fragments = getFragments(); 

    pageAdapter = new MyPageAdapter(getSupportFragmentManager(), fragments); 

    ViewPager pager = (ViewPager) findViewById(R.id.viewpager); 

    pager.setAdapter(pageAdapter); 
    pager.setCurrentItem(pos - 1); 
} 

private List<Fragment> getFragments() { 

    List<Fragment> fList = new ArrayList<Fragment>(); 
    for (int i = 0; i < feed.getItemCount(); i++) { 
     MyFragmentNews myfrag = new MyFragmentNews(); 
     Bundle bundle = new Bundle(); 
     bundle.putInt("abc", abc- 1); 
     bundle.putString("xyz", xyz); 
     myfrag.setArguments(bundle); 

     myfrag.newInstance(feed.getItem(i)); 
     fList.add(myfrag); 
    } 
    return fList; 
    } 
} 

我这是怎么做的片段

import android.content.Intent; 
import android.os.Bundle; 
import android.support.v4.app.Fragment; 
import android.support.v4.app.FragmentTransaction; 
import android.text.Html; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 
import android.view.View.OnClickListener; 
import android.widget.FrameLayout; 
import android.widget.ImageButton; 
import android.widget.RelativeLayout; 
import android.widget.TextView; 


public class MyFragmentNews extends Fragment { 
RSSItem rssItem; 
ImageButton bookmark; 
private RelativeLayout progressLoader; 
private FrameLayout theRoot; 

public MyFragmentNews newInstance(RSSItem newsItem) { 
    MyFragmentNews f = new MyFragmentNews(); 
    rssItem = newsItem; 
    return f; 
} 

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle  savedInstanceState) { 

    View view = inflater.inflate(R.layout.news_details, container, false); 

    TextView heading = (TextView) view.findViewById(R.id.newHeading); 
    heading.setText(AppUtils.cleanSymbols(Html.fromHtml(rssItem.getTitle()).toString())); 


    return view; 
} 

}

,这是帮我http://www.javacodegeeks.com/2013/04/android-tutorial-using-the-viewpager.html

,如果有人用手势dector做什么,我可以过张贴代码的链接,希望它有助于感谢