java - 在 PagerAdapter 中开始新 Activity

标签 java android tabs android-viewpager

我正在使用 ViewPagerExtensions .我想在 Pager Adapter 类的每个选项卡中启动一个新 Activity 。

现在这是默认代码:

@Override
public Object instantiateItem(ViewGroup container, int position) {

    RelativeLayout v = new RelativeLayout(mContext);

    TextView t = new TextView(mContext);
    t.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,
            LayoutParams.FILL_PARENT));
    t.setText(mData[position]);
    t.setTextSize(30);
    t.setGravity(Gravity.CENTER);

    v.addView(t);

    ((ViewPager) container).addView(v, 0);

    return v;

}

我想像为 android 选项卡那样做一些事情:

@Override
public Object instantiateItem(View container, int position) {

    // Create an Intent to launch an Activity for the tab (to be reused)
        intent = new Intent().setClass(this, NewActivity.class);

}

这会引发错误:The method setClass(Context, Class<?>) in the type Intent is not applicable for the arguments (PagerAdapter, Class<NewActivity>) .

最佳答案

恐怕你做不到。

如果您希望每个页面都有不同的布局:

View parent_view = null;

    if (position == 0) {
        parent_view = getViewForPageOne();

    } else if (position == 1) {
        parent_view = getViewForPageTwo();

    .........

    ((ViewPager) collection).addView(parent_view, 0);
    return parent_view;

}

private View getViewForPageOne(){
    View v = getLayoutInflater().inflate(R.layout.layout_page_one, null);
     TextView whatText =(TextView) v.findViewById(R.id.idOfTextView);
     whatText.setText("Page One");
     ....
     ....

     return v;
}

我认为您不能使用 ViewPagerExtensions 在每个选项卡中显示新 Activity

更新

如果你想开始新的 Activity 。您可以使用 ActionBarSherlock

关于java - 在 PagerAdapter 中开始新 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11486430/

相关文章:

java - 里氏替换原则和多重层次结构

android - 更新到 Android Studio 4.2 后无法创建新的 Kotlin 项目

android 搜索小部件菜单项

android - 无法使用 AppCompat 设置 ActionBar 选项卡指示器的样式

JavaFX - 如何同步CustomTab(扩展Tab)和TabPane

java.awt.Robot keyPress() 方法输入错误

java - HSQLDB 内存设置的 HSQLDB 约束违规和 SQL 查询日志

java - 如何使用 apache POI 的事件 API 获取合并区域?

android - TabHost 中的 Webview = 以黑屏启动

html - R Shiny : Avoid scrollbars when using googleVis charts in tabPanels