Android-ViewPager只翻转布局而不是片段
Android上有没有一种简单的方法可以在不同的布局之间切换,而不需要使用片段。我的视图是静态的(那里没有真正发生任何事情),但出于本地化的目的,我们不会使用图像,所以我会选择布局解决方案 如果能有一个很好的例子来展示这种技术,我将不胜感激 编辑: 以下是基于以下答案的完整工作代码:Android-ViewPager只翻转布局而不是片段,android,android-layout,android-fragments,xamarin,android-viewpager,Android,Android Layout,Android Fragments,Xamarin,Android Viewpager,Android上有没有一种简单的方法可以在不同的布局之间切换,而不需要使用片段。我的视图是静态的(那里没有真正发生任何事情),但出于本地化的目的,我们不会使用图像,所以我会选择布局解决方案 如果能有一个很好的例子来展示这种技术,我将不胜感激 编辑: 以下是基于以下答案的完整工作代码: public class LayoutPagerAdapter : PagerAdapter { Context m_context; readonly int[] m_sl
public class LayoutPagerAdapter : PagerAdapter
{
Context m_context;
readonly int[] m_slideLayoutResourceIds;
public LayoutPagerAdapter(Context context, int[] slideLayoutResourceIds)
{
m_context = context;
m_slideLayoutResourceIds = slideLayoutResourceIds;
}
public override Java.Lang.Object InstantiateItem(ViewGroup container, int position)
{
var inflater = LayoutInflater.From(m_context);
var view = inflater.Inflate(m_slideLayoutResourceIds[position], container, false);
container.AddView(view);
return view;
}
public override void DestroyItem(View container, int position, Java.Lang.Object objectValue)
{
base.DestroyItem(container, position, objectValue);
}
#region implemented abstract members of PagerAdapter
public override bool IsViewFromObject(View view, Java.Lang.Object objectValue)
{
return view == objectValue;
}
public override int Count
{
get
{
return m_slideLayoutResourceIds.Length;
}
}
#endregion
}
您可以为此创建自己的简单适配器:
public static class ViewPagerAdapter extends PagerAdapter {
private Context mContext;
public ViewPagerAdapter(Context context) {
mContext = context;
}
@Override
public View instantiateItem(ViewGroup container, int position) {
View view = LayoutInflater.from(mContext).inflate(R.layout.your_layout, container, false);
return view;
}
@Override
public int getCount() {
return 5;
}
@Override
public boolean isViewFromObject(View view, Object object) {
return view == object;
}
}
很抱歉问,为什么不使用片段?@CDrosos首先,我知道如何处理片段,第二个片段涉及编写大量代码,但在这种情况下没有多大好处,因为我的视图是虚拟布局。我有权将视图添加到容器中,以使其完全工作。我在上面添加了我的示例。