1

我正在尝试使活动具有可滑动的选项卡,每个选项卡都有不同的片段(我还不知道我将拥有多少个片段,所以假设它们至少有 5 个)。所以我在使用选项卡制作父活动时遇到问题(如果我说得对的话),然后片段本身有一些动态添加的视图(文本视图和一个图像视图),它们从不同的异步任务中获取它们的东西,当片段执行时显示。不知道我是否解释正确,但这是我的代码,我会请你添加所需的东西。

所以这里是必须托管选项卡和片段的父活动:

public class SecondActivity extends FragmentActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_second);
    }
}

这是其中一个片段(其他片段相似):

public class Fragment1 extends Fragment {

    LinearLayout layout;
    ImageView iv;
    String anotherURL;
    ArrayList<InfoStuff> ci;

    public Fragment1() {
        // Empty constructor
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        View rootView = inflater.inflate(R.layout.fragment1, container, false);
        layout = (LinearLayout) rootView.findViewById(R.id.layout);
        iv = (ImageView) rootView.findViewById(R.id.ivPortrait);
        Bundle b = this.getArguments();
        ci = b.getParcelableArrayList("infoStuff");
        regionUrl = b.getString("someURL");
        createViews();
        return rootView;
    }

    public void createViews() {

        TextView tv;

        tv = new TextView(v.getContext());
        tv.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
        tv.setText("le text");
        layout.addView(tv);

        tv = new TextView(v.getContext());
        tv.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
        tv.setText("some text");
        layout.addView(tv);


        ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(v.getApplicationContext()).build();
        ImageLoader.getInstance().init(config);
        String imgUrl = "someURL";
        ImageLoader.getInstance().displayImage(imgUrl, iv);
    }
}

我在使 ImageView 工作时也遇到了麻烦,因为它来自一个附加库(忘记了名称,这是通过 import com.nostra13.universalimageloader.core.ImageLoader 导入的;)

编辑:对不起,忘了提到标签必须是可滑动的

4

2 回答 2

0

文章在 Android 中使用 TabHost 和 Fragments 创建导航选项卡可能会对您有所帮助。

在本文中,我们将开发一个包含导航选项卡的 Android 应用程序。我们可以通过多种方式向应用程序添加导航选项卡。

从 Android 3.0 开始,创建导航选项卡的标准方法是使用操作栏。[...]

对于Android 2.x 及以上,我们可以使用Action bar Sherlock 库来创建导航库。[...]

在此应用程序中,我们使用 TabHost 和 Fragments 创建导航选项卡。[...]

此应用程序是在 Eclipse 3.7.2 中开发的,带有 ADT 插件 (20.0.2) 和 Android SDK (R20.0.1)。

于 2013-08-21T13:28:01.237 回答
0

我刚开始做一些与你想做的非常相似的事情。我在 Android Hive 上遵循了本教程,这对于获取选项卡、滑动和片段非常有帮助。(本例中的片段只是具有不同颜色的文本视图,但您可以轻松找出在您自己的视图中添加的位置)。

希望这会有所帮助 - 它对我有用!

于 2013-11-20T23:14:53.520 回答