Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/189.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何在ViewPager的布局中传播ListView?_Android_Android Listview_Android Viewpager - Fatal编程技术网

Android 如何在ViewPager的布局中传播ListView?

Android 如何在ViewPager的布局中传播ListView?,android,android-listview,android-viewpager,Android,Android Listview,Android Viewpager,在我的android应用程序中,我有一个ViewPager,里面有两个视图、导航和另一个可变布局。当应用程序启动时,它会在home_活动上启动,这是启动时的可变布局。但是,如果您向左滑动到导航栏并单击按钮,我需要将可变布局从主页切换到另一个视图。。。现在我有一个这样的系统: public class ViewPagerAdapter extends PagerAdapter { static int iFocusedActivity = R.layout.activity_home; publ

在我的android应用程序中,我有一个ViewPager,里面有两个视图、导航和另一个可变布局。当应用程序启动时,它会在home_活动上启动,这是启动时的可变布局。但是,如果您向左滑动到导航栏并单击按钮,我需要将可变布局从主页切换到另一个视图。。。现在我有一个这样的系统:

public class ViewPagerAdapter extends PagerAdapter
{
static int iFocusedActivity = R.layout.activity_home;

public int getCount()
{
    return 2;
}

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 = R.layout.activity_navigation;
        break;
    case 1:
        resId = iFocusedActivity;
        break;
    }
    View view = inflater.inflate(resId, null);
    ((ViewPager) collection).addView(view, 0);
    return view;
}

public boolean isViewFromObject(View arg0, Object arg1)
{
    return arg0 == ((View) arg1);
}

public static void setFocus(int iActivity)
{
    iFocusedActivity = iActivity;
}

public void destroyItem( View pager, int position, Object view )
{
    ((ViewPager)pager).removeView( (View)view );
}
}


它很好地改变了视图,调用了setFocus,给了寻呼机一个新的适配器。问题是我有一个名为layout_verblist的布局,当寻呼机采用该布局时,需要传播该布局,但只需单击按钮调用代码什么都做不了……这证明是一个巨大的问题。如何在Viewpager中传播布局列表?

您的问题没有多大意义,与布局文件的名称不一致也无济于事。也许您可以更好地解释所需的行为和问题。实际上,ViewPager包含两个视图,一个导航栏和一个受导航栏影响的视图。但是,如果在导航栏上选择了verblist,则需要调用verblist的onCreate方法来设置列表本身…onCreate用于什么?视图/布局没有onCreate回调,例如活动或片段。如果您引用的是活动的onCreate回调,那么您的应用程序结构从一开始就不正确,您应该对其进行修改。我做了。最初,我所有的视图都是独立的活动,但当我交换时,我保留了它们的活动类,我想我应该做的是从MainActivity的onCreate中删除这些类并管理布局。你真的应该考虑重构代码以使用片段。此外,你的应用程序中的导航听起来不太好。如果我完全理解,你最好使用选项卡切换布局。