如何在android中点击按钮时显示视图寻呼机的特定页面

如何在android中点击按钮时显示视图寻呼机的特定页面,第1张

概述我正在开发一个项目,我在一个屏幕上使用ViewPager,如下所示:但是你可以在那里看到,有一个上层布局,其中列出了根据显示的页面选择的年份.当我们滑动视图寻呼机时,年份也将根据显示的页面索引更改为下一个.我必须在几年的TextViews上实现Click *** 作,在其上将显示相应的ViewPagerPa

我正在开发一个项目,我在一个屏幕上使用VIEw Pager,如下所示:

但是你可以在那里看到,有一个上层布局,其中列出了根据显示的页面选择的年份.当我们滑动视图寻呼机时,年份也将根据显示的页面索引更改为下一个.我必须在几年的TextVIEws上实现Click *** 作,在其上将显示相应的VIEw Pager Page.但它怎么能实施呢?意味着当我们调用另一个VIEw时,我们如何在VIEw Pager中显示特定的页面索引.意味着当我们选择1998年时,那么页面将显示对应于1998年.我已经编写了一个代码,但这对我不起作用.

码:

for (int i = 0; i < (OvervIEw_Years.size()); i++) {                tvYear[i] = new TextVIEw(OvervIEw_New.this);                img_Pagination[i] = new ImageVIEw(OvervIEw_New.this);                //yearValue = OvervIEw_Years.get(i).toString();                linearLayout.LayoutParams params = new linearLayout.LayoutParams(                        LayoutParams.WRAP_CONTENT,                        LayoutParams.WRAP_CONTENT);                // params.weight = 0.5f;                params.gravity = Gravity.CENTER_VERTICAL;                params.setmargins(40, 4, 0, 0);                // tvYear[i].setLayoutParams(new                // LayoutParams(LayoutParams.WRAP_CONTENT,                // LayoutParams.WRAP_CONTENT));                tvYear[i].setLayoutParams(params);                // tvYear[i].setText(OvervIEw_Years.get(i).toString());                tvYear[i].setText(OvervIEw_Years.get(i).toString());                tvYear[i].setTag(OvervIEw_Years.get(i).toString());                tvYear[i].setGravity(Gravity.CENTER);                tvYear[i].setTypeface(null, Typeface.BolD);                tvYear[i].setTextcolor(color.WHITE);                tvYear[i].setID(i);                tvYear[i].setpadding(2, 0, 1, 17);                //tvYear[i].setTag(OvervIEw_Years.get(i-1).toString());                final TextVIEw tv = tvYear[i];                **tvYear[i].setonClickListener(new VIEw.OnClickListener() {                    @OverrIDe                    public voID onClick(VIEw arg0) {                        for(int i=0;i<((VIEwGroup)yearhorizontalscrollview.getChildAt(0)).getChildCount();i++){                            if(((TextVIEw)arg0)== ((VIEwGroup)yearhorizontalscrollview.getChildAt(0)).getChildAt(i)){                                currentposition = i;                            }                        }**                        onYearSelect(((TextVIEw)arg0).getText().toString());                    }                });                layout_Years.addVIEw(tvYear[i]);                linearLayout.LayoutParams paramsPagination = new linearLayout.LayoutParams(                        LayoutParams.WRAP_CONTENT,                        LayoutParams.WRAP_CONTENT);                // params.weight = 0.5f;                paramsPagination.gravity = Gravity.CENTER_VERTICAL;                paramsPagination.setmargins(5, 2, 0, 0);                img_Pagination[i].setLayoutParams(paramsPagination);                /*if (i == 0) {                    img_Pagination[0]                            .setBackgroundResource(R.drawable.pagination_selected);                } else {*/                    img_Pagination[i]                            .setBackgroundResource(R.drawable.pagination_unselected);                //}                img_Pagination[i].setID(i);                layout_Pagination.addVIEw(img_Pagination[i]);                tvYear[0].setBackgroundResource(R.drawable.selector_x);                /*tvYear[0]                        .setBackgroundResource(R.drawable.selector_x);*/                //tv_OvervIEw_AllYears.setBackgroundResource(R.drawable.selector_bg_big_new);                count=-1;            }

Thnx提前.

解决方法:

您应该能够在OnClickListener中使用setCurrentItem方法(下面的语法和文档),并且您的vIEwpager会自动滚动(如果smoothScroll未停用)到新位置.

VIEwPager.setCurrentItem(int index);ORVIEwPager.setCurrentItem(int index, boolean smoothScroll);

在这种情况下,您将用您想要的索引替换索引.因此,您可能还需要一个存储年份和页面之间关系的数组,或者您可以在年份中设置TAG(比如说位置),然后在OnClickListener上可以检索TAG转到该位置.

有关详细信息,请参阅ViewPager docs

总结

以上是内存溢出为你收集整理的如何在android中点击按钮时显示视图寻呼机的特定页面全部内容,希望文章能够帮你解决如何在android中点击按钮时显示视图寻呼机的特定页面所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1120182.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存