Articles of viewpager

在Android中同时处理多个视图的触摸事件

考虑下图中的例子, 我正在寻找一个解决scheme,将触摸事件从canvas视图传递给Viewpager 。 这对于在两个视图中同时应用相同数量的缩放都是必需的。 这是关于正在发生的事情的技术说明, (让我们把视图看作是A , B和C ) A.父视图 B.查看 C.查看传呼机 在孩子( B & C )上调用dispatchTouchEvent()之前, A.dispatchTouchEvent()将首先调用A.onInterceptTouchEvent()来查看视图组是否有兴趣截获事件。 所以如果A.onTouchEvent()返回false ,那么它回到B.onTouchEvent() 。 如果返回false ,则返回到C.onTouchEvent() ,调度继续。 一旦回来, ACTION_CANCEL将被分派给所有的孩子。 如果定义了事件监听器( OnTouchListener.onTouch() ),则所有后续的手势事件(直到ACTION_UP / ACTION_CANCEL )都将被使用,否则将在A的级别使用事件处理程序A.onTouchEvent() 。 在这一点上,我可以将事件从父项传递给子视图,但不能让2子视图B。 & C一起处理事件(在两个视图上应用相同的缩放量)。 有没有办法将触摸事件从父视图传递给子视图,以便他们可以同时处理事件? 这是我的布局设置, <RelativeLayout android:id="@+id/layoutParent" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#FFFFFFFF"> <com.androidapp.NonSwipeableViewPager android:id="@+id/pager" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_gravity="center" android:background="@color/transparent" /> <com.androidapp.DrawingView android:id="@+id/drawing" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/transparent" […]

ViewPager的碎片消失

我在DrawerLayout使用了ViewPagerIndicator ,但是最后一个不能和DrawerLayout一起工作。 一旦我打开应用程序,viewpager会正确显示,但是一旦我在DrawerLayout中更改碎片,ViewPager的碎片就会消失。 这是我的FragmentManager: FragmentManager fragmentManager = getSupportFragmentManager(); switch (arg2) { case 0: contentFragment = new Lebanon(); break; } fragmentManager.beginTransaction() .replace(R.id.content_frame, contentFragment).commit(); ViewPager中的第二个片段和第四个片断在那里,并没有消失,而第一个,第三个和第五个消失。 我的代码有什么问题? 这是我的片段: @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { viewta = inflater.inflate(R.layout.simple_tabs, container, false); SamsungLB = com.androidarabia.lebanon.SamsungLB.newInstance(); HTCLB = com.androidarabia.lebanon.HTCLB.newInstance(); LGLB = com.androidarabia.lebanon.LGLB.newInstance(); SonyLB = com.androidarabia.lebanon.SonyLB.newInstance(); SearchLB = com.androidarabia.lebanon.SearchLB.newInstance(); […]

在Android Wear上实现GridViewPager的正确方法是什么?

我想实现一个GridViewPager,所以我可以切换2个独特的意见。 到目前为止,我还没有能够添加任何意见。 以下是我的代码 public class Gridder extends Activity { private TextView mTextView; GridViewPager gridViewPager; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_gridder); final WatchViewStub stub = (WatchViewStub) findViewById(R.id.watch_view_stub); final LayoutInflater inflater = getLayoutInflater(); stub.setOnLayoutInflatedListener(new WatchViewStub.OnLayoutInflatedListener() { @Override public void onLayoutInflated(WatchViewStub stub) { gridViewPager = (GridViewPager) findViewById(R.id.pager); gridViewPager.setAdapter(new MyGridViewPagerAdapter()); gridViewPager.addView(inflater.inflate(R.layout.selector_generic, stub));; } }); } private class […]

Horizo​​ntalScrollView或Carrousel?

我想创build一个HorizontalScrollView ,但有一些“效果”,就像这个例子 ,或这个其他的例子 。 事情是,我不知道我将不得不使用多less物品; 我从API获取ImageView ,因此它应该是dynamic的。 我怎样才能做到这一点,如果它被选中,使用下面的TextView变得更大? 我在SO上发现的最接近的例子就是在这里 。 这正是我所需要的,但我已经testing了给出的答案,这对我来说不起作用…但是问题的形象正是我想要的。 任何人都可以指导我做这个? 比方说我将用5个ImageView testing ,所以如何dynamic添加这些ImageView的例子对我来说也是很好的。 另一个例子是Snapchat APP,但不同的是,我想添加一些效果,如select更大的东西。 编辑 我想要得到一个例子,如何做像一个布局(适配器)的自定义Horizo​​ntalScrollView和最重要的,如果可能的添加一个效果点击一个,我想要的适配器,因为我需要得到的项目点击当然。 我认为我应该使用RecycleView作为@UncaughtException对我说,因为我不知道我会得到多less图像,我将不得不把我的APP,所以我认为这是解决scheme。 这将是Snapchat HoritzontalScrollView和SO图像的混合

Recycler视图+ View Pager +嵌套的ScrollView + CoordinatorLayout

我正在处理一个布局,使得持有包含回收视图的片段的ViewPager被放置在协调器布局的nester scrollView中。 问题是一旦我点击回收站视图的嵌套滚动视图不工作.. 有没有什么可能的方式来有这样的滚动布局 <?xml version="1.0" encoding="utf-8"?> <android.support.design.widget.CoordinatorLayout android:layout_width="match_parent" android:layout_height="match_parent"> <NestedScrollView android:layout_width="match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior"> <LinearLayout android:id="@+id/lin" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <ViewPager android:id="@+id/view_pager" android:layout_width="match_parent" android:layout_height="wrap_content" /> </LinearLayout> <NestedScrollView> <android.support.design.widget.AppBarLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@android:color/transparent" app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> <android.support.design.widget.CollapsingToolbarLayout android:id="@+id/collapsing_toolbar" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" app:contentScrim="?attr/colorPrimary" app:layout_scrollFlags="scroll|exitUntilCollapsed"> <FrameLayout android:layout_width="match_parent" android:layout_height="190dp" android:minHeight="190dp" app:layout_collapseMode="parallax" > <ViewFlipper android:id="@+id/view_flipper" android:layout_width="match_parent" android:layout_height="match_parent"> <!–<ImageView android:id="@+id/backdrop" android:layout_width="match_parent" android:layout_height="match_parent" android:adjustViewBounds="true" android:fitsSystemWindows="true" android:scaleType="centerCrop"/>–> […]

ListFragment中的自定义ArrayAdapter

我想创build一个自定义ArrayAdapter用于我的ListFragment 。 现在, ListFragment没有显示任何东西,除了TextView指出它是什么片段的编号。 我在我的适配器的getView()方法中放置了一个断点,并且没有被调用。 我search了不会被调用的原因,有些人似乎认为我的ListView是隐藏的,所以我试着将layout_height改为wrap_content ,但是这并不起作用。 另外,我一直在关注这个开发者页面的代码: http : //developer.android.com/reference/android/support/v4/app/FragmentPagerAdapter.html ListFragment: public class HomeFragment extends ListFragment implements FragmentTitle { private int mNum = 0; private String mTitle = "Home"; private ListView mListView; private MyArrayAdapter mAdapter; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mNum = getArguments() != null ? getArguments().getInt("num") : 1; InfoContainer temp = […]

在v4 ViewPager上更改颜色TabSelector

有没有可能在v4 ViewPager上更改所选标签的颜色? 我需要使用v4 ViewPager,但我没有find任何来源来定制它。 只是为了澄清我需要改变蓝色到另一个:

如何自定义各个标签? (改变背景颜色,指标颜色和文字颜色)

在这个链接中: 如何以编程方式应用样式? 凯文·格兰特给了这个问题的解释,我的问题与他的代码是上下文的一部分。 准确地说: ctv = new CustomView(context, R.attr.tabStyleAttr); 在这个代码中说:上下文不能被parsing为一个variables 我想将特定的样式应用于选项卡,这就是为什么设置主题不适用于我。 当然也欢迎任何替代我的问题。 我尝试更改操作栏选项卡的背景颜色,指示器颜色和文本颜色。 @Override public void onTabSelected(ActionBar.Tab tab, FragmentTransaction fragmentTransaction) { CustomView ctv; ctv = new CustomView(this, R.attr.tabStyleAttr); tab.setCustomView(ctv); mViewPager.setCurrentItem(tab.getPosition()); } styles.xml <?xml version="1.0" encoding="utf-8"?> <resources> <style name="Theme.Ab" parent="@android:style/Theme.Holo.Light"> <item name="android:actionBarStyle">@style/abStyle</item> <item name="@attr/actionBarTabStyle">@style/tabStyle</item> <item name="android:actionBarTabTextStyle">@style/tabTextColor</item> </style> <style name="abStyle" parent="@android:style/Widget.Holo.Light.ActionBar.Solid"> <item name="android:background">@drawable/ab_solid_style</item> <item name="android:backgroundStacked">@drawable/ab_stacked_solid_style</item> <item name="android:backgroundSplit">@drawable/ab_bottom_solid_style</item> […]

回收站内的cardview中的滑动图像的最佳方式是什么?

我有一个Cardview的RecyclerView 。 我想要在这个CardView内滑动图像,就像在OLX应用程序。 最好的办法是什么? 我想在cardview中放置viewpager。 是好的,也许我应该尝试别的? 我用ViewPager做了,但是看起来太慢了。 这是viewpager适配器的一部分。 @Override public Object instantiateItem(ViewGroup collection, int position) { LayoutInflater inflater = LayoutInflater.from(mContext); ViewGroup layout = (ViewGroup) inflater.inflate(R.layout.viewpager_custom, collection, false); collection.addView(layout); ImageView image = (ImageView) layout.findViewById(R.id.viewPagerImageView); image.setImageResource(mPics[position]); return layout; }

用EspressotestingViewPager。 如何执行一个项目的button的动作?

我有一个ViewPager只包含一个图片和一个button的项目。 我无法成功地与项目(页面)的用户界面进行交互,因为除了显示的图片之外,没有什么可以区分(从UI的angular度来看) ViewPager所有项目。 我试图只select一个位置的项目: onData(is(instanceOf(ItemClass.class))) .atPosition(0) .onChildView(withId(R.id.button)) .perform(click()); 造成: NoMatchingViewException:层次结构中没有find匹配的视图:可以从类中分配:class android.widget.AdapterView 如何使用Espresso访问和testingViewPager项目?